¿Cómo configurar Gitlab-omnibus con un servidor web no incluido?

¿Cómo configurar Gitlab-omnibus con un servidor web no incluido?

Instalar

  1. Instalé el gitlabpaquete a través del paquete general en debian 7(versión 7.8.1-omnibus-1_amd64.deb);
  2. cambie la configuración como se describe enUsando un servidor web no incluido
  3. ejecute el comando reconfigure: sudo gitlab-ctl reconfigure(completo sin error).

nginx

No obtuve nginxninguna configuración para este gitlab, excepto la que el paquete podría haber creado con el siguiente /etc/gitlab/gitlab.rbarchivo:

external_url 'http://git.mydomain.fr'
web_server['external_users'] = ['www-data']
nginx['enable'] = false
ci_nginx['enable'] = false

Registros

/var/log/nginx/gitlab_error.log

2015/02/28 14:29:16 [alert] 4137#0: *14738 768 worker_connections are not enough while connecting to upstream, client: x.x.128.194, server: git.mydomain.fr, request: "GET / HTTP/1.0", upstream
: "http://x.x.128.194:80/", host: "git.mydomain.fr"

/var/log/nginx/gitlab_access.log

En access.log recibí cientos de solicitudes sobre /.

x.x.128.194 - - [28/Feb/2015:14:29:16 +0100] "GET / HTTP/1.0" 500 186 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:37.0) Gecko/20100101 Firefox/37.0"
x.x.128.194 - - [28/Feb/2015:14:29:16 +0100] "GET / HTTP/1.0" 500 186 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:37.0) Gecko/20100101 Firefox/37.0"
x.x.128.194 - - [28/Feb/2015:14:29:16 +0100] "GET / HTTP/1.0" 500 186 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:37.0) Gecko/20100101 Firefox/37.0"x.x.128.194 - - [28/Feb/2015:14:29:16 +0100] "GET / HTTP/1.0" 500 186 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:37.0) Gecko/20100101 Firefox/37.0"
x.x.128.194 - - [28/Feb/2015:14:29:16 +0100] "GET / HTTP/1.0" 500 186 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:37.0) Gecko/20100101 Firefox/37.0"

Pregunta

Al intentar contactar al servicio localmente usando links2o externamente recibí un error 502 Bad Gateway.

  • ¿Necesito crear una configuración personalizada de nginx?

Respuesta1

Continuando explorando encuentro el /var/opt/gitlab/directorio y soluciono esto haciendo:

sudo ln -s /var/opt/gitlab/nginx/conf/gitlab-http.conf /etc/nginx/sites-available/
sudo ln -s /etc/nginx/sites-{available,enabled}/gitlab-http.conf
sudo service nginx reload

Respuesta2

En cuanto a gitlab 8, ya no podemos realizar enlaces simbólicos al gitlab-http.conf predeterminado porque el servidor web del paquete no se instalará cuando configuremos nginx['enable'] = false.

Simplemente descargue las configuraciones correctas del servidor web desdeRepositorio de recetas de GitLaby cámbielo YOUR_SERVER_FQDNcon su nombre de dominio preferido.

Veraquí para instrucciones detalladassobre cómo instalar gitlab usando un servidor web no incluido.

Respuesta3

Para garantizar que los usuarios sean accesibles, su usuario de Nginx (generalmente www-data o nginx) debe agregarse al grupo gitlab-www:

sudo usermod -aG gitlab-www nginx

o

sudo usermod -aG gitlab-www www-data

Respuesta4

Si creó un enlace simbólico a gitlab-http.conf y luego obtuvo:

formato de registro desconocido "gitlab_access" en /etc/nginx/sites-enabled/gitlab-http.conf

Simplemente agregue las log_formatdirectivas /var/opt/gitlab/nginx/conf/nginx.confa su configuración global de nginx:

http {
  ...
  log_format gitlab_access '$remote_addr - $remote_user [$time_local] "$request" $status $body_bytes_sent "$http_referer" "$http_user_agent"';
  log_format gitlab_ci_access '$remote_addr - $remote_user [$time_local] "$request" $status $body_bytes_sent "$http_referer" "$http_user_agent"';
  log_format gitlab_mattermost_access '$remote_addr - $remote_user [$time_local] "$request" $status $body_bytes_sent "$http_referer" "$http_user_agent"';
  ...
}

información relacionada