【问题标题】:Capistrano deploy failed due to repository access denied由于存储库访问被拒绝,Capistrano 部署失败
【发布时间】:2015-09-16 13:51:11
【问题描述】:

我在我的桌面上运行 cap deploy 并且它能够连接到服务器。 但之后它无法从 Bitbucket 克隆代码。

conq:存储库访问被拒绝。 像这样的错误:(xxxx只是一个掩码)

失败:“rvm_path=/usr/local/rvm /usr/local/rvm/bin/rvm-shell 'ruby-2.1.3' -c 'if [ -d /var/www/staging.xxxx.com /shared/cached-copy ]; 然后 cd /var/www/staging.xxxx.com/shared/cached-copy && git fetch origin && git fetch --tags origin && git reset --hard 0e878ca6da018bff824d1f4d9e9d7a8805f1ce1b && git clean -d - x -f; 否则 git clone git@bitbucket.org:xxxx-admin/xxxx.git /var/www/staging.xxxx.com/shared/cached-copy && cd /var/www/staging.xxxx.com/shared /cached-copy && git checkout -b deploy 0e878ca6da018bff824d1f4d9e9d7a8805f1ce1b; fi'" on 13x.xxx.xxx.xx5

我绑定登录到服务器并直接运行 git clone。服务器能够访问 bitbucket 存储库并可以克隆代码。

请帮忙。

非常感谢。

【问题讨论】:

    标签: capistrano


    【解决方案1】:

    “conq:存储库访问被拒绝”意味着以下两种情况之一:

    1. Capistrano 没有为该存储库使用正确的 SSH 密钥。
    2. Capistrano 根本没有使用 SSH 密钥。

    尝试以 Capistrano 的身份运行 ssh -v -i /path/to/key git@bitbucket.org 并使用 Capistrano 应该使用的私钥。如果失败了,那么你得到了错误的密钥;如果成功,那么您可能需要在部署之前启动 ssh-agent 守护进程 (http://spin.atomicobject.com/2013/03/23/capistrano-deploys-ssh-agent/)。

    【讨论】:

    • 在本地机器上运行命令“ssh-add -l”。如果有多个密钥,请删除它们,然后重新添加正确的密钥“ssh-add path/to/correct/key” - 然后它应该运行。 Capistrano 始终使用第一个密钥,如果第一个密钥不是正确的密钥,则 cap 失败。
    猜你喜欢
    • 2021-10-12
    • 1970-01-01
    • 2019-05-30
    • 1970-01-01
    • 2018-02-10
    • 2014-01-03
    • 1970-01-01
    • 2017-06-10
    • 1970-01-01
    相关资源
    最近更新 更多