3

capistranoを使用してslicehostにアプリケーションをデプロイしようとしています。同じクレデンシャルを使用してSSH経由でログインできますが、デプロイしようとすると次のエラーが発生します。

  • `deploy'を実行する
  • `deploy:update'を実行します**トランザクション:開始
  • `deploy:update_code'を実行すると、ローカルで実行されているすべてのサーバーでキャッシュされたチェックアウトが更新されます:" git ls-remote git@git.assembla.com:xxx.git master "
  • "if [-d / home / sdn / shared / cached-copy]; then cd / home / xxx / shared / cached-copy && git fetch -q origin && git reset -q --hard 910a97024a45f1304d6b50c8862605ea0f1cf829 && gitclean-qを実行します-d -x -f; else git clone -q git@git.assembla.com:xxx.git / home / xxx / shared / cached-copy && cd / home / xxx / shared / cached-copy && git checkout -q -b deploy 910a97024a45f1304d6b50c8862605ea0f1cf829; fi "サーバー:[" 173.203.79.208 "] *** [deploy:update_code]ロールバック
  • 「rm-rf/home / xxx / releases / 20100506160548; true」サーバーの実行:["173.203.79.208"] **ロールバック中の[deploy:update_code]例外:Capistrano :: ConnectionError、接続に失敗しました:173.203.79.208(ネット::SSH::切断:リモートホストによって接続が閉じられました)接続が失敗しました:173.203.79.208(ネット:: SSH ::切断:リモートホストによって接続が閉じられました)

私は何が間違っているのですか?スライスホストで動作させるためにdeploy.rbファイルに追加する必要があるものはありますか?

4

3 に答える 3

1

私も同じ問題を抱えてる。

railsu@li:~/.ssh$ ls
authorized_keys

私はすでにrailsuとgitで.sshファイルを作成しています。しかし、この問題もここにあります。

したがって、このエラーは認証の問題ではないと思います。

于 2012-08-10T14:19:48.697 に答える
1

Slicehost には、git サーバーからリポジトリを複製する権限がありますか? git サーバーで ssh 認証が必要な場合は、ホストで ssh キーを生成し、ホストの公開キーを git サーバーに配置する必要があります。

そうでない場合は、ホストでの git の実行に関連する別の原因のようです。しかし、「(Net::SSH::Disconnect: connection closed by remote host)」は認証の問題のようなにおいがします。

于 2010-05-06T17:12:28.267 に答える
0

クリントンが提案するようにサーバーでキーを生成するか、SSH エージェント転送を有効にすることができます

これは、サーバーで新しい SSH キーを生成する必要がないことを意味します。デプロイ元のマシンに既にあるキーを使用し、キーはサーバーで使用するために転送され、Git サーバーに接続します。

ssh_options[:forward_agent] = trueカピストラーノ レシピに追加するか、次の~/.ssh/configようにホスト構成を追加できます。

Host <name>
  HostName <ip or host>
  User <username>
  IdentityFile ~/.ssh/<filename>
  ForwardAgent yes

私は後者の方が好きです。

www.unixwiz.netに、SSH エージェント転送の完全なガイドがあります

于 2010-05-06T23:37:47.653 に答える