【问题标题】:Capistrano 3 SSHKit::Runner::ExecuteError: Exception while executing on host [hostname ]agent could not sign data with requested identityCapistrano 3 SSHKit::Runner::ExecuteError: 在主机 [hostname] 上执行时出现异常,代理无法使用请求的身份签署数据
【发布时间】:2014-06-16 13:01:40
【问题描述】:

在将我的 rails 应用程序部署到 ubuntu 服务器时出现以下错误,我已正确设置 ssh 密钥并且可以 ssh 到服务器,但是当我尝试这样做时却收到以下错误

 cap production deploy

这是错误信息

cap aborted!
SSHKit::Runner::ExecuteError: Exception while executing on host xxxxxx.xxxxxxx.xxx: agent could not sign data with requested identity

我无法弄清楚我做错了什么,因为我之前已经部署了,我只需要更新我的应用程序以进行我所做的更改。自上次部署以来,我没有更改我的 deploy.rb、Capfile 或 deploy/production.rb 文件

【问题讨论】:

  • 遇到同样的问题
  • 尝试直接从终端 ssh 到服务器。如果您可以 ssh,请尝试重新启动本地计算机和目标服务器。这对我有用。
  • 就我而言,我忘记将deploy.rb 中的git@example.com 更改为git@github.com
  • @scaryguy 谢谢,伙计。就我而言,它是.com 而不是.ru。 @everyone 先检查你的服务器地址。

标签: ruby-on-rails ssh capistrano capistrano3


【解决方案1】:

我通过发出ssh-add 解决了类似的问题。看来我当前的环境没有正确拾取密钥并阅读它们解决了这个问题。

【讨论】:

  • 我已经尝试过了,但当时无济于事,但从在线研究中我看到它是很多人推荐的解决方案
  • ssh-add 本身对我不起作用,但 ssh-add ~/.ssh/path_to_key 起作用。我有很多键,而需要的一个已经出现在 ssh-add -L 的输出中,然后才没有用
【解决方案2】:

我有同样的错误。

ssh-copy-id user@ipaddress

帮我解决了这个问题。

【讨论】:

    【解决方案3】:

    我遇到了同样的问题,但在我的情况下,我必须从本地计算机中删除文件 .ssh/known_hosts

    【讨论】:

      【解决方案4】:

      在将 Rails 从 4.1.x 升级到 4.2 后,我在尝试捆绑时开始遇到类似的错误。我通过删除共享包目录来修复它。这是我采取的步骤:

      1. SHH 进入服务器
      2. cd /my/app/shared/bundle/ruby
      3. rm -rf 2.1.0 或任何“版本”目录
      4. 重新运行部署cap production deploy

      此时,您可能会遇到内存问题(我在部署到 DigitalOcean 液滴时遇到了问题)。解决方法是在 droplet 上创建并启用交换文件。

      【讨论】:

        猜你喜欢
        • 2015-12-14
        • 1970-01-01
        • 1970-01-01
        • 2015-09-15
        • 1970-01-01
        • 2021-04-10
        • 1970-01-01
        • 1970-01-01
        • 2018-11-13
        相关资源
        最近更新 更多