J'ai installé Gitlab CE sur une édition serveur Ubuntu 14.04 dédiée avec package Omnibus.
Maintenant, je voudrais installer trois autres hôtes virtuels à côté de gitlab.
Deux sont des applications Web node.js lancées par un non-root user
fonctionnant sur deux ports > 1024
, la troisième est une application Web PHP qui nécessite le lancement d'un serveur Web.
Il y a:
8081
(node.js
)8082
(node.js
)PHP
)Mais Omnibus listen 8 et ne semble utiliser ni Apache2 ni Nginx, donc je ne peux pas les utiliser pour servir mon PHP app et reverse) -proxy mes deux autres applications de nœuds.
Ce que la mécanique de service Gitlab Omnibus utilise pour
listen 80
? Comment dois-je créer les trois autres hôtes virtuels pour pouvoir fournir les vHosts suivants?
gitlab.mycompany.com
(:80
) -- déjà utilisébower.mycompany.com
(:80
)npm.mycompany.com
(:80
)packagist.mycompany.com
(:80
)
Comme je ne voudrais pas changer le serveur nginx pour gitlab (avec quelques autres intégrations), le moyen le plus sûr serait la solution ci-dessous.
aussi selon
Gitlab: Ningx => Insertion de paramètres personnalisés dans la configuration NGINX
éditez le /etc/gitlab/gitlab.rb de votre gitlab:
nano /etc/gitlab/gitlab.rb
et inscrivez-vous dans nginx ['custom_nginx_config'] et modifiez comme ci-dessous assurez-vous de décommenter
# Example: include a directory to scan for additional config files
nginx['custom_nginx_config'] = "include /etc/nginx/conf.d/*.conf;"
créez le nouveau répertoire de configuration:
mkdir -p /etc/nginx/conf.d/
nano /etc/nginx/conf.d/new_app.conf
et ajoutez du contenu à votre nouvelle configuration
# my new app config : /etc/nginx/conf.d/new_app.conf
# set location of new app
upstream new_app {
server localhost:1234; # wherever it might be
}
# set the new app server
server {
listen *:80;
server_name new_app.mycompany.com;
server_tokens off;
access_log /var/log/new_app_access.log;
error_log /var/log/new_app_error.log;
proxy_set_header Host $Host;
proxy_set_header X-Real-IP $remote_addr;
location / { proxy_pass http://new_app; }
}
et reconfigurez gitlab pour insérer les nouveaux paramètres
gitlab-ctl reconfigure
redémarrer nginx
gitlab-ctl restart nginx
pour vérifier le journal des erreurs nginx:
tail -f /var/log/gitlab/nginx/error.log