替换gitlab自带的Nginx,并修改仓库存储路径

默认情况下,gitlab使用自带的Nginx,占用80端口,这样就与系统原本安装的Nginx冲突。导致其中一个nginx无法启动;

解决方案:

禁用gitlab自带Nginx 并把 UNIX套接字 更改为 TCP端口

禁用捆绑的Nginx
vim /etc/gitlab/gitlab.rb

 

将
nginx['enable'] = true
修改为
nginx['enable'] = false
并去掉注释 (前边的#)

允许gitlab-workhorse监听TCP(默认端口设置为8891),编辑/etc/gitlab/gitlab.rb:

gitlab_workhorse['listen_network'] = "tcp"
gitlab_workhorse['listen_addr'] = "127.0.0.1:8891"  //这个端口号一会和Nginx代理的端口号要一致

  

#访问域名,域名请换成自己的实际域名
external_url 'http://39.1.1.113:8890'
gitlab_rails['trusted_proxies'] = ['39.1.1.113']

#gitlab 数据存放位置
# git_data_dir='/alidata/gitdata'
git_data_dirs({
  "default" => {
    "path" => "/alidata/gitdata"
   }
})
#gitlab 附件上传位置
#gitlab_rails['uploads_directory'] = "/data/gitlab/uploads"

#gitlab 环境协议及访问地址
## 该地址将用在ngx 的 upstream 配置中,很重要,网上示例大多都写成了 server unix:/var/opt/gitlab/gitlab-workhorse/socket fail_timeout=0;实际报ngx 的 502 Bad Gateway 错误
gitlab_workhorse['listen_network'] = "tcp"
gitlab_workhorse['listen_addr'] = "127.0.0.1:8891"



#扩展WEB服务(指现有nginx的)的LINUX启动用户,请根据实际环境配置
web_server['external_users'] = ['root']

#关闭自带的ngx
nginx['enable'] = false

  

重启gitlab服务 使更改生效。

gitlab-ctl reconfigure && gitlab-ctl restart

 通过系统原本安装的Nginx反代以便提供访问

$ vim /usr/local/nginx/conf/vhost/gitlab.conf
# 为原Nginx新建一个gitlab的配置文件
server {
    listen       8890; 
    server_name  localhost;

    location / {
        root  html;
        index index.html index.htm;
        proxy_pass http://127.0.0.1:8891; #这里与前面设置过的端口一致
    }
}

  systemctl restart nginx  或者 service nginx restart 重启

posted @ 2020-07-10 14:01  佚小名  阅读(1329)  评论(0编辑  收藏  举报