将 GitLab 连接到 Bitbucket 的 ssh public 密钥存储在哪里?

Where to store the ssh public key for connecting GitLab to Bitbucket?

我想将 GitLab 的(Omnibus 安装)连接到 Bitbucket。根据 the documentation,我需要为其创建并存储一个 public 密钥:

GitLab will automatically register your public key with Bitbucket as a deploy key for the repositories to be imported. Your public key needs to be at ~/.ssh/bitbucket_rsa.pub, which will expand to /home/git/.ssh/bitbucket_rsa.pub in most configurations.

事实上我没有/home/git。那么,我怎么知道我必须在哪里创建 public 密钥,以便 GitLab 注意到它并自动注册它?

Omnibus 安装中 git 用户的主目录默认为 /var/opt/gitlab。您可以检查 gitlab.rb 配置文件中的密钥 user['home'] 并查看您是否修改了它,或者执行 cat /etc/passwd 并在其中找到用户 git 的主目录。

默认值user['home'](记住#表示它被注释掉了):

# user['home'] = "/var/opt/gitlab"

cat /etc/passwd | grep git 的输出:

git:x:1000:1000:git,,,:/var/opt/gitlab:/bin/sh

找到用户 git 的主目录后,您可以将 bitbucket_rsa.pub 放入文件夹 .ssh。如果它不存在,您可以创建该文件夹。