centos7.4的gitlab关掉自带的nginx转发,使用外部nginx重定向,报错502等问题。

nginx的多域名配置,可以查看另一篇文章,多域名多站点nginx配置。

这里我们来说gitlab(首先安装好了,域名或者ip也配置了)

使用外部nginx,最安全的做法:

1.关掉自带的nginx(下面的文件路径是我安装时候的默认的,两年有一些版本不同,路径也不同,我的好像是10.x的)

输入 i /etc/gitlab/gitlab.rb

把原来这个#nginx['enable'] = true换成 nginx['enable'] = false

2.替换掉端口,它是默认拦截80端口,然后转发到127.0.0.1:8080,一般8080给tomcat用了。

同样在上面的gitlab.rb文件里面,找到#unicorn【“port”】 = 8080,换成unicorn【“port”】 = 8081(端口自己找一个没被用的也行)

然后去对应的unicorn.rb文件,终端输入 vi /var/opt/gitlab/gitlab-rails/etc/unicorn.rb,找到#listen “127.0.0.1:8080”,tcp_nopush=》true,换成listen “127.0.0.1:8081”,tcp_nopush=》true。

3.可以在nginx的conf.d文件夹建一个新的gitlab.conf,参考这里的网站直接拷贝代码进去,直接就是80端口拦截,server_name,就是你安装gitlab时候,配置的域名。

4.重启你的nginx和gitlab

 systemctl restart nginx

sudo gitlab-ctl reconfigure

ps:第三步主要注意这里

upstream gitlab-workhorse {
  server unix:/var/opt/gitlab/gitlab-workhorse/socket;
}

这里的我是gitlab-workhorse,它里面的gitlab,下面http://gitlab用到的,名字要对应,然后注意server unix:/var/opt/gitlab/gitlab-workhorse/socket;这个是socket的位置,下面出现502多半是权限问题,所以更换权限sudo chmod -R o+x /var/opt/gitlab/gitlab-workhorse/socket的时候,路径要对,不同的版本路径可能不同。

你可能感兴趣的:(学习心得)