Rails,Capistrano,bitbucket,许可被拒绝(publickey)

时间:2017-05-31 15:18:05

标签: ruby-on-rails bitbucket capistrano digital-ocean

我正在尝试使用Capistrano在Digital Ocean上部署rails应用程序,但我遇到了困难。我明白了

00:00 git:check
  01 git ls-remote git@bitbucket.org:paaggeli/mutetale.git HEAD
  01 Permission denied (publickey).
  01 fatal: Could not read from remote repository.
  01
  01 Please make sure you have the correct access rights
  01 and the repository exists.
(Backtrace restricted to imported tasks)
cap aborted!
SSHKit::Runner::ExecuteError: Exception while executing on host 
46.101.112.45: Exception while executing on host 46.101.112.45: git exit status: 128
git stdout: Nothing written
git stderr: Permission denied (publickey).
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

SSHKit::Runner::ExecuteError: Exception while executing on host 46.101.112.45: git exit status: 128
git stdout: Nothing written
git stderr: Permission denied (publickey).
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

SSHKit::Command::Failed: git exit status: 128
git stdout: Nothing written
git stderr: Permission denied (publickey).
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

Tasks: TOP => deploy:initial
(See full trace by running task with --trace)
The deploy has failed with an error: Exception while executing on host 46.101.112.45: Exception while executing on host 46.101.112.45: git exit status: 128
git stdout: Nothing written
git stderr: Permission denied (publickey).
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

capistrano.log文件

 DEBUG Uploading /tmp/git-ssh-mutetale-production-ubuntu.sh 0.0%

 INFO Uploading /tmp/git-ssh-mutetale-production-ubuntu.sh 100.0%

 INFO [1baad1b1] Running /usr/bin/env chmod 700 /tmp/git-ssh-mutetale-production-ubuntu.sh on 46.101.112.45

 DEBUG [1baad1b1] Command: ( export RBENV_ROOT="$HOME/.rbenv" RBENV_VERSION="2.4.1" ; /usr/bin/env chmod 700 /tmp/git-ssh-mutetale-production-ubuntu.sh )

 INFO [1baad1b1] Finished in 0.156 seconds with exit status 0 (successful).

 INFO [2cd1c0fa] Running /usr/bin/env git ls-remote git@bitbucket.org:paaggeli/mutetale.git HEAD on 46.101.112.45

 DEBUG [2cd1c0fa] Command: ( export RBENV_ROOT="$HOME/.rbenv" RBENV_VERSION="2.4.1" GIT_ASKPASS="/bin/echo" GIT_SSH="/tmp/git-ssh-mutetale-production-ubuntu.sh" ; /usr/bin/env git ls-remote git@bitbucket.org:paaggeli/mutetale.git HEAD )

 DEBUG [2cd1c0fa]       Permission denied (publickey).

 DEBUG [2cd1c0fa]       fatal: Could not read from remote repository.



Please make sure you have the correct access rights

and the repository exists.

在服务器上运行ssh -T git@bitbucket.org返回:

以paaggeli登录。

您可以使用git或hg连接到Bitbucket。 Shell访问被禁用。

请帮帮我

1 个答案:

答案 0 :(得分:1)

检查您的git访问权限,并确保您的capistrano用于克隆回购的用户具有读取权限。

  1. 在您的服务器上运行ssh-keygen过程。
  2. 在任何GitHub页面的右上角,点击您的个人资料照片。
  3. 在您的个人资料页面上,单击“存储库”选项卡,然后单击存储库的名称。
  4. “设置”标签在您的资源库的右侧边栏中,点击“设置”。
  5. 在侧栏中,单击“部署密钥”。
  6. 单击“添加部署密钥”。粘贴您的公钥并提交。
  7. https://developer.github.com/v3/guides/managing-deploy-keys/#setup-2