2

当我试图将某些东西推送到我的 gitlab 的仓库时,geosurvey.git我收到了这个错误:

在此处输入图像描述

git@192.168.31.128:geosurvey.git: /usr/local/lib/ruby/1.9.1/net/http.rb:762!in `initialize': Connection refused(2) (Errno:ECONNREFUSED)
  from /usr/local/lib/ruby/1.9.1/net/http.rb:762:in `open'
  from /usr/local/lib/ruby/1.9.1/net/http.rb:762:in `block in connect'
  from /usr/local/lib/ruby/1.9.1/timeout.rb:54:in `timeout'
  from /usr/local/lib/ruby/1.9.1/timeout.rb:99:in `timeout'
  from /usr/local/lib/ruby/1.9.1/net/http.rb:762:in `connect'
  from /usr/local/lib/ruby/1.9.1/net/http.rb:755:in `do_start'
  from /usr/local/lib/ruby/1.9.1/net/http.rb:744:in `start'
  from /home/git/gitlab-shell/lib/gitlab_net.rb:56:in `get'
  from /home/git/gitlab-shell/lib/gitlab_net.rb:17:in `allowed?'
  from /home/git/gitlab-shell/lib/gitlab_shell.rb:51:in `validate_access'
  from /home/git/gitlab-shell/lib/gitlab_shell.rb:21:in `exec'
  from /home/git/gitlab-shell/lib/gitlab_shell.rb:16:in `<main>'

上面的错误是针对此代码的:

def connect
      D "opening connection to #{conn_address()}..."
      s = timeout(@open_timeout) { TCPSocket.open(conn_address(), conn_port()) }
      D "opened"
      if use_ssl?
        ssl_parameters = Hash.new
        iv_list = instance_variables
        SSL_ATTRIBUTES.each do |name|
          ivname = "@#{name}".intern
          if iv_list.include?(ivname) and
             value = instance_variable_get(ivname)
            ssl_parameters[name] = value
          end
        end
        @ssl_context = OpenSSL::SSL::SSLContext.new
        @ssl_context.set_params(ssl_parameters)
        s = OpenSSL::SSL::SSLSocket.new(s, @ssl_context)
        s.sync_close = true
end

我的 gitlab.yml 或 /etc/nginx/sites-available/gitlab 可能有问题吗?

谢谢,


问题是我无法与远程 gitlab 服务器建立 ssh 连接。我的 ssh 端口是 22(默认),我的 gitlab 端口是 3222。

4

2 回答 2

1

gitlab 的安装指南缺少必须如何配置监听端口。

现在,有了这条线,我可以推送和克隆任何存储库。

listen *:80 default_server;         # e.g., listen 192.168.1.1:80;
于 2013-03-26T14:36:09.510 回答
0

问题是我无法与远程 gitlab 服务器建立 ssh 连接。我的 ssh 端口是 22(默认),我的 gitlab 端口是 3222。

然后你需要确保在使用 ssh Gitlab url 时使用端口 3222。
您可以在配置文件中指定自定义端口号,如在这个问题中,也在“使用具有非标准端口的远程存储库”中说明,scp 样式。
或者直接在 ssh url 中指定端口:

ssh://[user@]host.xz[:port]/path/to/repo.git/
于 2013-03-26T07:40:34.150 回答