2017-12-07 8 views
0

私は実際にドッキングを練習しています。は、ドッカーのjenkinsサーバーからドッカーコンテナ内のスレーブスレーブを設定できます

テクニカルレシピは、ドッキング用のコンテナであるjenkinsスレーブを設定することです。以下は

は私が次にコマンド
$ docker run --name jenkins_slave -it -p 2222:22 jenkins_slave 
172.17.0.1 

を使用して、コンテナなどドッカイメージを実行

docker build -t jenkins_slave . 

次にコマンドを使用してドッキングウィンドウの画像を建て

FROM ubuntu:latest 
ENV DEBIAN_FRONTEND noninteractive 
RUN groupadd -g 1000 jenkins_slave 
RUN useradd -d /home/jenkins_slave -s /bin/bash \ 
-m jenkins_slave -u 1000 -g jenkins_slave 
RUN echo jenkins_slave:jpass | chpasswd 
RUN apt-get update && \ 
apt-get install -y openssh-server openjdk-8-jre wget iproute2 
RUN mkdir -p /var/run/sshd 
CMD ip route | grep "default via" \ 
| awk '{print $3}' && /usr/sbin/sshd -D 

jenkins_slaveためDockerfileです以下のドッカーコマンドを使用してjenkinsサーバーを実行します。

01以下は
$ docker run --name jenkins_server -p 8080:8080 -p 50000:50000 dockerinpractice/jenkins:server 

ノード構成の詳細である -

node configuration details

それから私はジェンキンスさんがそれ

にエージェントプロセスを起動するために失敗したため、このエージェント をというエラーメッセージがオフラインで取得

Slave node error

以下は、私がテストと呼ばれる簡単なビルド構成を持つエラースタックトレース

[12/07/17 08:50:00] [SSH] Opening SSH connection to 172.17.0.1:2222. 
/var/jenkins_home/.ssh/known_hosts [SSH] No Known Hosts file was found at 
/var/jenkins_home/.ssh/known_hosts. Please ensure one is created at this path and that Jenkins can read it. 
Key exchange was not finished, connection is closed. 
java.io.IOException: There was a problem while connecting to 172.17.0.1:2222 
at com.trilead.ssh2.Connection.connect(Connection.java:834) 
at com.trilead.ssh2.Connection.connect(Connection.java:703) 
at com.trilead.ssh2.Connection.connect(Connection.java:617) 
at hudson.plugins.sshslaves.SSHLauncher.openConnection(SSHLauncher.java:1284) 
at hudson.plugins.sshslaves.SSHLauncher$2.call(SSHLauncher.java:804) 
at hudson.plugins.sshslaves.SSHLauncher$2.call(SSHLauncher.java:793) 
at java.util.concurrent.FutureTask.run(FutureTask.java:266) 
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) 
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) 
at java.lang.Thread.run(Thread.java:748) 

Caused by: java.io.IOException: Key exchange was not finished, connection is closed. 
at com.trilead.ssh2.transport.KexManager.getOrWaitForConnectionInfo(KexManager.java:95) 
at com.trilead.ssh2.transport.TransportManager.getConnectionInfo(TransportManager.java:237) 
at com.trilead.ssh2.Connection.connect(Connection.java:786) 
... 9 more 
Caused by: java.io.IOException: The server hostkey was not accepted by the verifier callback 
at com.trilead.ssh2.transport.KexManager.handleMessage(KexManager.java:548) 
at com.trilead.ssh2.transport.TransportManager.receiveLoop(TransportManager.java:790) 
at com.trilead.ssh2.transport.TransportManager$1.run(TransportManager.java:502) 
... 1 more 

ですが、スレーブがオフラインであるため、ビルドが実行されていません。

build configuration

ジェンキンスマスターがスレーブ・サーバーを識別していない理由を任意のアイデア。

答えて

2

ノード構成でHost Key verification strategyNon verfiying Verification Strategyに変更するだけです。

関連する問題