我试图安装gitlab在archlinux下面https://wiki.archlinux.org/index.php/gitlab由于8080是一个很好的当前端口,我已经切换到8033。
当我尝试连接到网站时,它会打印出402错误。 如果我看看nginx / gitlab_errors.log我有:
2015/03/23 21:16:00 [error] 29748#0: *1081 connect() failed (111: Connection refused) while connecting to upstream, client: 5.51.59.153, server: gitlab.floth.fr, request: "GET / HTTP/1.1", upstream: "http://127.0.0.1:8033/", host: "gitlab.floth.fr"
如果我打开/var/lib/gitlab/gitlab-shell.log
我得到
# Logfile created on 2015-03-23 21:09:06 +0100 by logger.rb/47272 W, [2015-03-23T21:09:06.321779 #30833] WARN -- : Failed to connect to internal API <GET http://localhost:8033/api/v3/internal/check>: #<Errno::ECONNREFUSED: Connection refused - connect(2) for "localhost" port 8033> W, [2015-03-23T21:17:48.059769 #31230] WARN -- : Failed to connect to internal API <GET http://localhost:8033//api/v3/internal/check>: #<Errno::ECONNREFUSED: Connection refused - connect(2) for "localhost" port 8033> W, [2015-03-23T21:22:01.846281 #31548] WARN -- : Failed to connect to internal API <GET http://localhost:8033//api/v3/internal/check>: #<Errno::ECONNREFUSED: Connection refused - connect(2) for "localhost" port 8033>
如果我运行sudo -u gitlab bundle exec rake gitlab:check RAILS_ENV=production
我得到:
hooks directories in repos are links: ... can't check, you have no projects Running /usr/share/webapps/gitlab-shell/bin/check Check GitLab API access: FAILED: Failed to connect to internal API gitlab-shell self-check failed Try fixing it: Make sure GitLab is running; Check the gitlab-shell configuration file: sudo -u gitlab -H editor /usr/share/webapps/gitlab-shell/config.yml Please fix the error above and rerun the checks. Checking GitLab Shell ... Finished
如果我做netstat -a | grep 8033,没有听到这个端口…
有没有人有一个想法在哪里寻找? 什么服务没有运行,因为没有启动或失败? 感谢您的帮助。
编辑gitlab-shell/config.yml
user: gitlab gitlab_url: "http://localhost:8033/" repos_path: "/srv/git/gitlab" auth_file: "/var/lib/gitlab/.ssh/authorized_keys" redis: bin: /usr/bin/redis-cli host: 127.0.0.1 port: 6379 database: 0 namespace: resque:gitlab log_file: "/var/log/gitlab/gitlab-shell.log" log_level: INFO audit_usernames: false git_annex_enabled: false
TADA! 我发现我的配置不好。 所有来自于我选择了8080以外的其他端口的情况。在这种情况下,不仅要修改gitlab-shell配置(只有客户端),还要修改服务器部分gitlab/config/unicorn.rb
:
# listn on both a Unix domain socket and a TCP port. # If you are load-balancing multiple Unicorn masters, lower the backlog # setting to eg 64 for faster failover. listen "/run/gitlab/gitlab.socket", :backlog => 1024 listen "127.0.0.1:8033", :tcp_nopush => true