gitlab6.0,错误连接被拒绝 - 连接(2)(Errno :: ECONNREFUSED)

时间:2013-08-26 14:36:07

标签: ruby-on-rails git ssh gitlab

我安装了gitlab

我在阅读

后安装了gitlab

我在浏览器的gitlab上创建存储库,
我设置了~/.ssh/config

$ git push origin master

我得到了Erorr

/usr/local/lib/ruby/2.0.0/net/http.rb:878:in `initialize': Connection refused - connect(2) (Errno::ECONNREFUSED)
    from /usr/local/lib/ruby/2.0.0/net/http.rb:878:in `open'
    from /usr/local/lib/ruby/2.0.0/net/http.rb:878:in `block in connect'
    from /usr/local/lib/ruby/2.0.0/timeout.rb:52:in `timeout'
    from /usr/local/lib/ruby/2.0.0/net/http.rb:877:in `connect'
    from /usr/local/lib/ruby/2.0.0/net/http.rb:862:in `do_start'
    from /usr/local/lib/ruby/2.0.0/net/http.rb:851:in `start'
    from /home/git/gitlab-shell/lib/gitlab_net.rb:62:in `get'
    from /home/git/gitlab-shell/lib/gitlab_net.rb:17:in `allowed?'
    from /home/git/gitlab-shell/lib/gitlab_shell.rb:60:in `validate_access'
    from /home/git/gitlab-shell/lib/gitlab_shell.rb:23:in `exec'
    from /home/git/gitlab-shell/bin/gitlab-shell:16:in `<main>'
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

我已阅读过它们,但我无法解决此错误。

(也许我的英语很差,所以我错过了阅读)

ssh -vT相同错误

...
...
debug1: Sending env LC_CTYPE = UTF-8
debug1: Sending env LANG = ja_JP.UTF-8
/usr/local/lib/ruby/2.0.0/net/http.rb:878:in `initialize': Connection refused - connect(2) (Errno::ECONNREFUSED)
    from /usr/local/lib/ruby/2.0.0/net/http.rb:878:in `open'
    from /usr/local/lib/ruby/2.0.0/net/http.rb:878:in `block in connect'
    from /usr/local/lib/ruby/2.0.0/timeout.rb:52:in `timeout'
    from /usr/local/lib/ruby/2.0.0/net/http.rb:877:in `connect'
    from /usr/local/lib/ruby/2.0.0/net/http.rb:862:in `do_start'
    from /usr/local/lib/ruby/2.0.0/net/http.rb:851:in `start'
    from /home/git/gitlab-shell/lib/gitlab_net.rb:62:in `get'
    from /home/git/gitlab-shell/lib/gitlab_net.rb:24:in `discover'
    from /home/git/gitlab-shell/lib/gitlab_shell.rb:77:in `user'
    from /home/git/gitlab-shell/lib/gitlab_shell.rb:82:in `username'
    from /home/git/gitlab-shell/lib/gitlab_shell.rb:36:in `exec'
    from /home/git/gitlab-shell/bin/gitlab-shell:16:in `<main>'
debug1: client_input_channel_req: channel 0 rtype exit-status reply 0
debug1: client_input_channel_req: channel 0 rtype eow@openssh.com reply 0
debug1: channel 0: free: client-session, nchannels 1
Transferred: sent 2560, received 3808 bytes, in 0.4 seconds
Bytes per second: sent 7260.5, received 10799.9
debug1: Exit status 1

为什么ssh使用Ruby?

哪个设置使用Ruby? 如何解决此错误?

P.S。

我发现哪个使用红宝石。

/home/git/.ssh/authorized_keys

command="/home/git/gitlab-shell/bin/gitlab-shell key-4",no-port-forwarding,no-X11-forwarding,no-agent-forwarding,no-pty ssh-rsa .....

所以我命令这个

$ /home/git/gitlab-shell/bin/gitlab-shell key-4

我得到了相同的错误

usr/local/lib/ruby/2.0.0/net/http.rb:878:in `initialize': Connection refused - connect(2) (Errno::ECONNREFUSED)
    from /usr/local/lib/ruby/2.0.0/net/http.rb:878:in `open'
    from /usr/local/lib/ruby/2.0.0/net/http.rb:878:in `block in connect'
    from /usr/local/lib/ruby/2.0.0/timeout.rb:52:in `timeout'
    from /usr/local/lib/ruby/2.0.0/net/http.rb:877:in `connect'
    from /usr/local/lib/ruby/2.0.0/net/http.rb:862:in `do_start'
    from /usr/local/lib/ruby/2.0.0/net/http.rb:851:in `start'
    from /home/git/gitlab-shell/lib/gitlab_net.rb:62:in `get'
    from /home/git/gitlab-shell/lib/gitlab_net.rb:24:in `discover'
    from /home/git/gitlab-shell/lib/gitlab_shell.rb:77:in `user'
    from /home/git/gitlab-shell/lib/gitlab_shell.rb:82:in `username'
    from /home/git/gitlab-shell/lib/gitlab_shell.rb:36:in `exec'
    from /home/git/gitlab-shell/bin/gitlab-shell:16:in `<main>'

所以,我已阅读/home/git/gitlab-shell/lib/gitlab_net.rb脚本。

gitlab_net.rb连接到

gitlab_net.rb连接到
https://my-server/api/v3/internal/discover?key_id=5
但我没有为https设置,所以这是
This webpage is not available

http://my-server/api/v3/internal/discover?key_id=5 可以连接到服务器。

我太近了。

设置ssl?

4 个答案:

答案 0 :(得分:4)

我昨天使用我的gitlab设置遇到了同样的问题,并且在阅读this后能够修复它。基本上你要做的是编辑'my-server'计算机上的/etc/hosts文件并添加

127.0.0.1  your-gitlab-url

答案 1 :(得分:1)

我可以看到/home/git/gitlab-shell/config.yml可能有点不对劲 类似的东西:

gitlab_url:“http://gitlab.somedomain.com:8080/

此地址可能不正确,因为gitlab-shell通过http协议向Gitlab本身发送请求,并使用此变量进行连接。

答案 2 :(得分:0)

你可能应该设置:

gitlab_url: to http://localhost/

这是必不可少的:     127.0.0.1 your-gitlab-url 否则:内部/发现等将收到401

更新: 请参阅: https://github.com/gitlabhq/gitlabhq/issues/4730#issuecomment-26332619 使用

gitlab_url: to http://127.0.0.1

应该可以正常工作

答案 3 :(得分:0)

检查nginx是否正常运行。

sudo nginx -t

  

可能存在“检测到重复的默认服务器”等问题   并且需要删除该默认文件。

修复错误后,发出命令

sudo service nginx restart

/home/git/gitlab

下重新运行检查命令

sudo -u git -H bundle exec rake gitlab:check RAILS_ENV=production