问题描述
按照官方文档已经成功部署但是 想使用原来已经安装好的nginx,来代理使用google查询了很多教程,没用成功。
问题解答
回答1:这货好麻烦,我当时弄这个,被折腾得半死,它的 nginx 经常会去抢系统原来的 nginx 的 80 监听。
虽然官方号称说在配置文件里禁用掉它的 nginx 就可以了,但我操作的时候经常出现错误。于是:
我的解决方案:
编辑 gitlab 配置文件:/etc/gitlab/gitlab.rb 加入如下配置:
# disable gitlab’s nginxnginx[’enable’] = false# For GitLab CI, use the following:ci_nginx[’enable’] = false
把 /opt/gitlab/embedded/conf/nginx.conf 里 gitlab 默认的监听 80 改成 88,然后在主 nginx 配置里添加如下:
upstream gitlab { server 127.0.0.1:88; server 127.0.0.1:88;}server { listen 80; server_name mygit.mydomain.com; access_log /data/log/nginx/gitlab.access.log; error_log /data/log/nginx/gitlab.error.log; large_client_header_buffers 4 16k; client_max_body_size 300m; client_body_buffer_size 128k; proxy_connect_timeout 300; proxy_read_timeout 300; proxy_send_timeout 300; proxy_buffer_size 64k; proxy_buffers 4 32k; proxy_busy_buffers_size 64k; proxy_temp_file_write_size 64k; location / {proxy_pass http://gitlab;proxy_redirect off;proxy_set_header Host $host;proxy_set_header Host $proxy_host;proxy_set_header X-Real_IP $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; }}
重新加载 gitlab 配置,重新加载主 nginx。
sudo gitlab-ctl reconfiguresudo nginx -s reload