問題タブ [sshkit]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
57 参照

wordpress - ローカルホストで実行されたときのカピストラーノ変更コマンド

Capistrano と Ruby/Rake も初めてです。

私は Windows でローカルに作業しているので、時々かなり苦労しています.. 私はcapistrano-wpcliを実行して、Wordpress データベースをプッシュおよびプルしています。

スクリプトはプロセスで gunzip を使用しますが、これは Unix では正常に機能しますが、Windows では機能しません。次の行を追加することで、SSHkit を構成できることがわかりました。

データベースをプルするだけなら問題なく動作しますが、プッシュするときはリモート ホストで gunzip を実行する必要があります。

cap wpcli:db:pull にフックして、そのコマンドが実行されている場合、またはコマンドが localhost で実行されている場合にのみ構成を設定できますか?

0 投票する
0 に答える
67 参照

node.js - capistrano 3 でカスタム リモート タスクが実行されない

capistrano 3 とブランチで奇妙な問題が発生しました。リモートサーバーでブランチを実行したいのですが、何も起こりません。私のカスタム リモート タスクは次のようになります。

「cap staging deploy」を実行すると、コマンドが実行されていることがわかります。

しかし、私の資産は構築されておらず、何も行われていません。そして、サーバーの実行コマンドに接続すると、すべて正常に動作します。

私はこの動作を理解していません、誰かがそれを認識していますか?

助けてくれてどうもありがとう

Capistrano バージョン: 3.4.0 (Rake バージョン: 10.5.0) を使用しています。

0 投票する
2 に答える
2635 参照

authentication - SSHKit / Net::SSH が認証できないため、Capistrano は新しい Ubuntu サーバーにデプロイできません

作業中のアプリケーションの新しいバージョン用にステージング/テスト サーバーをセットアップしようとしています。そのため、パスワードを入力しなくても、ローカル アカウントが展開サーバーで認証できるように設定しました。

今、私はカピストラーノに入ろうとしましたが、すぐに拒否されました:

これまでの調査:

  • 最初は、誰かが最後にアプリケーションを展開したときに必要なすべてのハックでこれを行っていたので、方程式から多くのものを取り除くために、すべてのファイルを脇に置き、Capistrano に新しい展開構成を生成させました。したがって、これは現在すべて最小限の構成で実行されており、まだ認証できません。
  • Capistrano のドキュメントには、ユーザーの SSH 構成ファイルが使用されると記載されているため、私は当初、公開鍵認証がデフォルトで使用されると想定していました。これは事実ではなく、メソッドとして明示的に配置する必要があることがわかり'publickey'ました。そのため、この前はパスワードを要求していました。パスワードを要求しないようにすることが、私が理解しなければならない最も難しいことだと思っていましたが、明らかにそうではありませんでした.
  • 「キー」設定が必要かどうかは完全にはわかりません。繰り返しますが、Capistrano が構成の設定を使用していない場合、キー ファイルも取得されていない可能性があるためです。そのため、ファイルへのパスを手動で入力しようとしましたが、とにかく状況は変わりません。
  • .pubおそらく秘密鍵が必要であることに気付くまで、キーファイル名の最後に を付けていました。しかし、それを削除した後、まったく同じ結果が得られます。
  • コメントの提案のおかげで、パスワードなしで sudo を機能させることがとにかくクリーンなソリューションだと思うので、サーバー宣言からパスワードを削除しました。同じ結果ですが。

今、私はこれを診断する方法についてのアイデアがありません。

ssh -vCapistrano が何をしようとしているのかについてより多くの情報を得るために、これに相当するものがあるかどうかはわかりません。

明らかに私の SSH 接続は問題ありませんが、Capistrano は接続に適切な設定を使用していません。そのために、私が現在持っているファイルは次のとおりです。

Capfile:

config/deploy.rb:

config/deploy/staging.rb:

問題を sshkit に追い込む:

capistrano が実際の SSH 作業を行うために sshkit を使用していることに気付いたので、そのためのテスト プログラムを作成しました。

これは、同じキーを使用するようにデフォルト設定されているにもかかわらず、パスワードを要求するという同じ問題を示しています。verbosity を に設定しても、DEBUG機能するための有用な診断は実際には追加されていません。

問題を Net::SSH に追い込む:

sshkit 用の gem をインストールするときに、実際の SSH 作業を行うためにさらに別の SSH ライブラリ net-ssh を使用していることに気付いたので、それを使用した新しいテスト プログラムを作成してみました。

今回は、デバッグ出力が役に立ちます。

そのため、キーの1つだけを無効と見なして試行し、数行下にサポートされていないことを記録しているようです。私の.sshディレクトリには、試されていないように見える別のキーがあります。