2016-11-07 19 views
2

私は、Vagrant、Ansible、DockerでCIパイプラインと開発環境を作成しています。私の目標は、1つのコマンドですべてを自動化することであり、手動による設定は必要ありません。単一のアシスタンスプレイブッブコマンドを使用すると、完全に機能する必要があります。パイプラインの連続展開すべてのサービスがドッキングされています。Docker Jenkinsコンテナ、ホストキーの確認に失敗しました

ここに問題があります。私は公式のジェンキンスドッキングウィンドウコンテナを実行して、gitのために認証を設定しようとすると、私は次のエラー

host key verification failed

を取得し、私は手動ではgit、信頼とホスト鍵を受け入れるようにジェンキンスコンテナ、SSHにログインでき理解します初めてログインしたときに表示されます。しかし、これは絶対にいいえ、接続も自動的に処理する必要があります。

git serverを作成時に信頼できるようにJenkins dockerコンテナを設定するにはどうしたらいいですか?

+0

** sshのキーペア**を生成することで、jenkinsコンテナ内に任意のssh認証方法をセットアップしましたか?もしそうなら、jenkinsコンテナはパスワードをやりとりすることなく自動的にgit serverに接続できます。ホスト鍵の検証だけでなく、クライアント検証の問題でもあり、gitサーバのホスト鍵をjenkinsユーザの** known_hosts **ファイルに追加することで排除することができます。 – Kadir

答えて

0

Ansible's known_hostsモジュールを使用すると、この問題を解決できます。

このモジュールは、サーバーの~/.ssh/known_hostsファイルにホストキーを追加します。これは、手動手順と同様です。

だけでなく、モジュールの制限に注意してください:あなたが管理するホストキーの非常に多くを持っている場合、あなたはtemplateモジュールがより便利になる

+1

dockerコンテナが完全かつ独立していることを意図しているので、実行中のdockerコンテナを不可能に設定することは逆説的です。純粋なdockerコマンドまたはdocker_containerモジュールを使用して、コンテナを起動するときにキーを提供することは可能ですか? –

関連する問題