最近使用GitLab提交MergeRequest时,提示502 GitLab is not responding。
使用gitlab-ctl tail查看错误信息如下:
2016/06/28 11:50:50 [error] 6565#0: *1 upstream prematurely closed connection while reading response header from upstream, client: 1 0.xx.xx.xx, server: 10.xx.xx.xx, request: "GET /xxx/webopinion/merge_requests/new?utf8=%E2%9C%93&merge_request%5Bsource_project_id %5D=6&merge_request%5Bsource_branch%5D=develop&merge_request%5Btarget_project_id%5D=4&merge_request%5Btarget_branch%5D=develop HTTP/ 1.1", upstream: "http://unix:/home/gitlab/gitlab-rails/tmp/sockets/gitlab.socket:/xxx/webopinion/merge_requests/new?utf8=%E2%9C%9 3&merge_request%5Bsource_project_id%5D=6&merge_request%5Bsource_branch%5D=develop&merge_request%5Btarget_project_id%5D=4&merge_reque st%5Btarget_branch%5D=develop", host: "10.xx.xx.xx", referrer: "http://10.xx.xx.xx/xxx/webopinion/merge_requests/new" 原因及解决方案上面的问题是由于unicron的超时时间设置偏低,再加上我用的服务器性能不好导致的。
解决方案:
修改文件{GIT_LAB}/gitlab-rails/etc/unicorn.rb,将其中的timeout修改的高一些,比如90,然后gitlab-ctl restart重启即可。
更多GitLab相关教程见以下内容:
Ubuntu 14.04下安装GitLab指南
如何在Ubuntu Server 14.04下安装Gitlab中文版
CentOS源码安装GitLab汉化版
在 CentOS 上部署 GitLab (自托管的Git项目仓库)