LoginSignup
4
5

More than 5 years have passed since last update.

Docker Jenkinsでssh-slaveを使う(Kitematic)

Posted at

Kitematicでネットワークの設定ができるようになっていたので、Docker上にJenkins+ssh-slave(ノード、エージェント)環境を構築してみた。
もっとも、非Docker環境での構築を行ったことはないので非Docker環境以外で通用する内容もあるかも。

環境について

Docker 17.12.0-ce-win47
Kitematic 0.17.2

使用したDockerのイメージ

jenkins
https://hub.docker.com/_/jenkins/
jenkinsci/ssh-slave
https://hub.docker.com/r/jenkinsci/ssh-slave/

手順

Jenkinsコンテナの設定

Kitematicの「+NEW」からjenkinsを選択し「create」
Setting - Networkタブで「bridge」をチェックしておく。
networkは「bridge」以外のものを作成して使ってもOK。docker networkコマンドで作成できるはず。

Jenkinsの起動、初期設定

(割愛)

sshのキーペアの作成

Jenkinsコンテナのコンソールを開き、キーペアを作成する。

$ ssh-keygen  -t rsa -b 4096

Generating public/private rsa key pair.
Enter file in which to save the key (/var/jenkins_home/.ssh/id_rsa):[Enter or 任意のパス]
Enter passphrase (empty for no passphrase):[秘密鍵のパスワード]
Enter same passphrase again:[秘密鍵のパスワード]
Your identification has been saved in /var/jenkins_home/.ssh/id_rsa.
Your public key has been saved in /var/jenkins_home/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:XXXXXXXXXXXXXXXXXXXXXXXX jenkins@XXXXXXXXXXXX
The key's randomart image is:

/var/jenkins_home/.ssh/id_rsa.pub
の内容を控えておく。

ssh‐slaveコンテナの設定

Kitematicの「+NEW」からjenkinsを選択し「create」
Setting - Networkタブで「bridge」をチェックしておく
Setting - GeneralタブでEnvironment Variablesに追加。1
JENKINS_SLAVE_SSH_PUBKEY=(控えておいたid_rsa.pubの内容)


  1. https://hub.docker.com/r/jenkinsci/ssh-slave/ のHow to use this image with Docker Plugin参照 

4
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
5