gitlab
本身是自帶nginx的污秆,但有的時候我們希望使用外部已有的nginx,比如我們希望外部的nginx可以反向代理gitlab/redmine/confluence等軟件良拼,用戶只需要訪問外部nginx的端口就可以了。
配置gitlab
編輯gitlab配置文件
$ vim /etc/gitlab/gitlab.rb
# 讓gitlab的內(nèi)置nginx監(jiān)聽7000端口
nginx['listen_port'] = 7000
# 設(shè)置gitlab的訪問路徑(是通過外部nginx反向代理訪問的)
external_url 'http://域名/gitlab'
讓配置生效
# 讓配置生效
$ gitlab-ctl reconfigure
$ gitlab-ctl restart
配置外部nginx
編輯nginx配置文件
$ vim /etc/nginx/nginx.conf
http {
...
upstream git {
server localhost:7000;
}
server {
listen 80;
server_name 域名;
location /gitlab {
# 設(shè)置最大允許上傳單個的文件大小
client_max_body_size 1024m;
proxy_redirect off;
#以下確保 gitlab中項(xiàng)目的 url 是域名而不是 http://git常侦,不可缺少
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
# 反向代理到 gitlab 內(nèi)置的 nginx
proxy_pass http://git/gitlab;
index index.html index.htm;
}
}
...
}
重啟nginx
# 檢測配置是否正確
$ nginx -t
# 重啟nginx
$ nginx -s reload
這樣就可以通過訪問 http://域名/gitlab 來訪問gitlab服務(wù)器了聋亡。