突然、CapistranoはSSHの問題を返し始めました。
**ロールバック中の[deploy:update_code]例外:Capistrano :: ConnectionError、接続に失敗しました:staging.myserver.com(Net :: SSH :: AuthenticationFailed:root)接続に失敗しました:staging.myserver.com(Net :: SSH :: AuthenticationFailed:root)
私のdeploy.rbには次のものが含まれています。
require 'capistrano/ext/multistage'
ssh_options[:forward_agent] = true
ssh_options[:keys] = ["myserver_rsa"]
set :stages, ["staging", "production"]
set :default_stage, "staging"
set :scm, "git"
set :application, "myapp"
set :repository, "git@bitbucket.org:project/myapp.git"
set :use_sudo, false
set :deploy_via, :remote_cache
そして私のconfig/deploy/staging.rbで
server 'staging.myserver.com', :app, :web, :db, primary: true
set :branch, 'staging'
set :rails_env, "staging"
set :deploy_to, "/var/rails/#{application}"
set :user, "root"
set :password, "my_triple_check_password_login"
set :domain, "staging.myserver.com"
ここに投稿する前に私が行ったテスト:
ssh(ssh -v staging.myserver.com)を介してログインしてみてください=>パスワードを要求せずに正常にログインしました。(myserver_rsaキーを使用)
エージェント転送=>サーバーおよびローカルで有効
キーなしでssh経由でログインしてみてください:=>パスワードの入力を求められます。staging.rbからコピーして貼り付け、完全にログに記録します。
サーバーのルートパスワードを変更します。=> ssh root@...経由で新しいパスワードでログインしてみてください。うまくいきました。しかし、capistranoを介して、失敗します。
IRBでNetSSHスクリプトを実行してログインします。=>ログインして、
hostname
bashから結果を返します。
この問題は昨日突然始まります。私は本当にこれ以上のアイデアはありません:/
まず第一に、サーバーでの変更は何もありませんでした。
ありがとう!