无法通过SSH连接到自定义端口上的Gitlab容器

时间:2016-04-09 20:51:07

标签: git powershell ssh gitlab

  1. 我有一个VMWare播放器,它正在运行一个基于官方容器仓库托管Gitlab服务器的本地虚拟机。我按如下方式更改了端口:

      

    主机→容器
      27个→22个
      85→80

  2. 我可以从浏览器访问地址http://192.168.71.129:85/的gitlab。

  3. 我使用GitHub的Git PowerShell将SSH密钥添加到我可以在本地访问的Gitlab帐户中。

  4. 我在.ssh目录中创建了一个配置文件,其内容如下:

    #in gitlab.com server
    Host 192.168.71.129
    Port 27
    User git
    RSAAuthentication yes
    IdentityFile ~/.ssh/id_rsa
    
  5. 当我尝试使用Gitlab中显示的以下命令推送到我的Gitlab帐户时:

    cd existing_folder
    git init
    git remote add origin git@gitlabhost:someuser/secondtest.git
    git add .
    git commit
    git push -u origin master
    
  6. 我从上一个语句中得到以下错误:

    ssh: Could not resolve hostname gitlabhost: Name or service not known
    fatal: Could not read from remote repository.
    Please make sure you have the correct access rights and the repository exists.

    我缺少什么设置?任何提示,建议?

2 个答案:

答案 0 :(得分:1)

感谢Ansgar Wiechers,下面是我的netstat输出

$ netstat -l -t -n
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State
tcp        0      0 127.0.0.1:9344          0.0.0.0:*               LISTEN
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN
tcp        0      0 :::8089                 :::*                    LISTEN
tcp        0      0 :::27                   :::*                    LISTEN
tcp        0      0 :::85                   :::*                    LISTEN
tcp        0      0 :::22                   :::*                    LISTEN

实际上问题是你指出的是名称解析。我将命令更改为IP地址而不是主机名,我能够得到它。

C:\Users\SomeUser\Documents\FirstPhPProj> git init
Initialized empty Git repository in C:/Users/SomeUser/Documents/FirstPhPProj/.git/
C:\Users\SomeUser\Documents\FirstPhPProj [master +6 ~0 -0 !]> git remote add origin git@192.168.71.129:alamabbas/secondtest.git
C:\Users\SomeUser\Documents\FirstPhPProj [master +6 ~0 -0 !]> git add .

答案 1 :(得分:1)

根据错误消息,无法解析主机名Array.flatten!

  

ssh:无法解析主机名 gitlabhost:名称或服务未知

您将服务器的IP地址放在SSH配置中:

Host 192.168.71.129

但在设置存储库的来源时使用了主机名:

git remote add origin git@gitlabhost:someuser/secondtest.git

有两种方法可以解决此问题:

  • 使用原点中的IP地址:

    gitlabhost
  • 确保正确的名称解析,例如通过向git remote add origin git@192.168.71.129:someuser/secondtest.git 添加这样的行:

    /etc/hosts