访问gitlab报502错误

2025-09-21 06:18:50

1、启动gitlab:gitlab-ctl start

浏览器访问(IP地址为安装gitlab机器的地址):http://10.19.206.119:8081

报错502,如图

访问gitlab报502错误

2、检查报错原因:gitlab-rake gitlab:check,发现配置文件/opt/gitlab/embedded/service/gitlab-shell/config.yml有报错

访问gitlab报502错误

3、查看/opt/gitlab/embedded/service/gitlab-shell/config.yml文件:

vi /opt/gitlab/embedded/service/gitlab-shell/config.yml

出现图信息,注意红框里面的内容,意思是:gitlab_url应该以斜杠结尾

而我们发现,改配置文件gitlab_url却没有以斜杠结尾,问题找到了

访问gitlab报502错误

4、开始解决问题,编辑配置文件/opt/gitlab/embedded/service/gitlab-shell/config.yml在端口号8081后面加上斜线“/”,重新加载配置执行命令gitlab-ctl reconfigure,即可临时解决此问题,但实践后发现,执行gitlab-ctl reconfigure后/opt/gitlab/embedded/service/gitlab-shell/config.yml文件会被还原,所以第二次执行gitlab-ctl reconfigure之前要重新加上斜杠。

访问gitlab报502错误

1、执行gitlab-ctl reconfigure后/opt/gitlab/embedded/service/gitlab-shell/config.yml文件会被还原,后面又得重新去加斜杠,这个问题可能是此版本的bug,要修复这个bug就得去修改代码

2、经过复杂又费时的代码相关性分析,最终发现相关bug代码在文件:/opt/gitlab/embedded/cookbooks/gitlab/recipes/itlab-shell.rb里面,具体位置在第58行

3、第58行修改前:

api_url ||= "http://#{node['gitlab']['unicorn']['listen']}:#{node['gitlab']['unicorn']['port']}#{node['gitlab']['unicorn']['relative_url']}"

修改后(替换端口、最后加上斜杠):

   api_url ||= "http://#{node['gitlab']['unicorn']['listen']}:#{node['gitlab']['gitlab-rails']['gitlab_port']}#{node['gitlab']['unicorn']['relative_url']}/"

4、最后重新配置、重启

gitlab-ctl reconfigure

gitlab-ctl restart

这样就可以彻底解决gitlab这个因为bug导致的报错了

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢