servidor - stop nginx centos 7
¿Cómo puedo reiniciar el paquete nginx en gitlab por separado? (3)
Mi tuto explica cómo agregar vhosts a un servidor nginx no empaquetado, no al empaquetado.
Los pasos son:
- deshabilitar la versión incluida
- instalar una versión nginx independiente compilada con el módulo de pasajeros,
- configurarlo para servir gitlab como un vhost
- y luego configurar otros vhosts personalizados en él.
Si sudo service nginx restart
volver
* Restarting nginx nginx [fail]
entonces probablemente instaló nginx por separado con algo como sudo apt-get install nginx
o instaló la versión recompilada con el módulo de pasajero pushion como explico en mi tuto?
¿Realmente usa la versión incluida o no entendió este paso en mi tuto?
Responda estas preguntas en los comentarios y luego editaré esta respuesta para escribir la solución que realmente necesita.
He instalado la versión Gitlab CE. Puedo encontrar nginx incluido en Gitlab. Sin embargo, no puedo encontrar una manera de reiniciar nginx por separado. He intentado sudo service nginx restart
pero da:
* Restarting nginx nginx [fail]
He comprobado todo el documento pero no puedo encontrar una solución. Estoy intentando agregar vhost al paquete nginx de acuerdo con este tutorial . Pero me quedé en ese paso. ¿Hay otra manera de agregar vhost a nginx empaquetado con Gitlab? O ¿Cómo puedo verificar si mi nginx conf funciona?
Edición: 502 error que he resuelto.
Intento usar Ngin-bundle NONx de acuerdo con este doc , pero después de modificar gitlab.rb
y ejecutar sudo gitlab-ctl reconfigure
, obtuve 502 Whoops, GitLab is taking too much time to respond.
error.
Aquí está mi gitlab.conf
para nginx.
upstream gitlab {
server unix://var/opt/gitlab/gitlab-git-http-server/sockets/gitlab.socket fail_timeout=0;
#
}
server {
listen *:80;
server_name blcu.tk;
server_tokens off;
root /opt/gitlab/embedded/service/gitlab-rails/public;
client_max_body_size 250m;
access_log /var/log/gitlab/nginx/gitlab_access.log;
error_log /var/log/gitlab/nginx/gitlab_error.log;
# Ensure Passenger uses the bundled Ruby version
passenger_ruby /opt/gitlab/embedded/bin/ruby;
# Correct the $PATH variable to included packaged executables
passenger_env_var PATH "/opt/gitlab/bin:/opt/gitlab/embedded/bin:/usr/local/bin:/usr/bin:/bin";
# Make sure Passenger runs as the correct user and group to
# prevent permission issues
passenger_user git;
passenger_group git;
# Enable Passenger & keep at least one instance running at all times
passenger_enabled on;
passenger_min_instances 1;
location / {
try_files $uri $uri/index.html $uri.html @gitlab;
}
location @gitlab {
# If you use https make sure you disable gzip compression
# to be safe against BREACH attack
proxy_read_timeout 300; # Some requests take more than 30 seconds.
proxy_connect_timeout 300; # Some requests take more than 30 seconds.
proxy_redirect off;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Frame-Options SAMEORIGIN;
proxy_pass http://gitlab;
}
location ~ ^/(assets)/ {
root /opt/gitlab/embedded/service/gitlab-rails/public;
# gzip_static on; # to serve pre-gzipped version
expires max;
add_header Cache-Control public;
}
error_page 502 /502.html;
}
Para reiniciar el paquete nginx do sudo gitlab-ctl restart
Para reiniciar solo un componente de GitLab Omnibus puede ejecutar sudo gitlab-ctl restart <component>
. Por lo tanto, para reiniciar Nginx:
sudo gitlab-ctl restart nginx
Como nota adicional, este mismo concepto es posible con casi todos los comandos gitlab-ctl
. Por ejemplo, sudo gitlab-ctl tail
permite ver todos los registros de GitLab. Aplicando este concepto, sudo gitlab-ctl tail nginx
solo rastreará los registros de Nginx.