哪个用户使用部署密钥?

Which user to use with deployment keys?

我正在尝试将部署密钥用于属于某个组织(我是该组织的管理员)的存储库。

我创建了一个 private/public 密钥对,public 被粘贴到 'deployment keys' window 中并被接受。然后我尝试通过 git pull 从远程存储库进行连接:

git add origin git@myserver.com:/organization/therepo.git
git pull

我一直被要求输入用户 git 的密码。我尝试改用用户 gitgogs<my login><the name or the organization> -- 每次都要求我输入密码。

我尝试了一个简单的ssh -v来检查提供给gogs的密钥:它是正确的(上面的私钥,对应于部署(public)密钥)。

我应该使用哪个用户连接?

故障排除想法的所有功劳都归功于 David Cullen(通过他的评论)

问题是 我调用了错误的 sshd 服务

我的 GOGS 服务在 docker 中运行,ssh 端口与主机服务器之一不同(这是我使用默认端口 22 调用的端口):

# docker ps
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                                           NAMES
86ddbabc8cbb        gogs/gogs           "docker/start.sh /bin"   13 days ago         Up 3 minutes        0.0.0.0:3000->3000/tcp, 0.0.0.0:10022->22/tcp   gogs

通过使用 ~/.ssh/config 这样的文件

Host    my.git.server.com
        Port 10022
        IdentityFile    /var/www/.ssh/my.private.key.openssh
        IdentitiesOnly yes

我现在成功地从远程服务器中提取了 GOGS 存储库:

$ git pull ssh://git@my.git.server.com:/organisation/therepo
From ssh://my.git.server.com:/organisation/therepo
 * branch            HEAD       -> FETCH_HEAD
Already up-to-date.

请注意 organisation 之前有一个斜杠(回复:初始评论)