Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationEventAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
3
Help us understand the problem. What is going on with this article?

More than 1 year has passed since last update.

@c3drive

dockerでjenkins構築(2020年05月時点)

経緯

こちらの本の通りに進めていたところプラグインのインストール時、ならびにjenkinsのmaster-slave間でssh接続でエラーが出てしまいました。
Docker/Kubernetes 実践コンテナ開発入門
いくつかのQiita記事でも取り上げてありましたが、2020年現在ではどの情報でも動かなかったため備忘録として記述します。

プラグインのインストールエラー解消

jenkinsはプラグインインストールが失敗していても使うことができますが、
slave01を追加しようとすると認証エラーが出てしまっていました。
こちらの記事で丁寧に解説していただいていますが、私が持っている本では改定が入っており、
すでにこの方の記事の状態のサンプルコードが書かれていました。
参考:https://qiita.com/_ainosh_/items/04992adbab8502e2ed9e

改定後のサンプルコードでも古い状態だったため以下のように修正。
その他の手順は先の記事を参考にしました。
※失敗したjenkinsの情報が残っていたりしてよくわからなくなるので、jenkins_homeのディレクトリ削除、イメージ削除も行なっていました。

docker-compose.yml
version: "3"
services:
  master:
    container_name: master
#   2020/05時点でjenkinsci/jenkinsはDEPRECATEDとなっておりいくつかのプラグインがエラー
#   image: jenkinsci/jenkins:2.142-slim
    image: jenkins/jenkins:latest #この時点の最新は2.235でした
    ports:
      - 8080:8080
    volumes:
      - ./jenkins_home:/var/jenkins_home
    links:
      - slave01

  slave01:
    container_name: slave01
#   2020/05時点で上記だけだとうまく行かなかったのでこちらも変更
#   image: jenkinsci/ssh-slave
    image: jenkins/ssh-slave:latest
    environment:
     - JENKINS_SLAVE_SSH_PUBKEY=

jenkinsのssh接続でエラー(javaがない)

プラグインのインストールが全て成功したので改めてslave01を追加しましたがエラーでうまく行かず。
内容からすると最初出ていた認証エラーは解消していましたが今度はjavaがないというエラーが出ていました。

こちらを参考にしました。一部記述のコマンドでは場所がわからなかったのでコマンドを変えています。
参考:https://qiita.com/michi-michi/items/b1835d6e89856643b65a

##コンテナの中のbashに入ります
docker exec -it slave01 bash

##javaの環境変数を確認
root@xxxxx:xx# echo $JAVA_HOME
/usr/local/openjdk-8

あとは先ほどの記事の通りに、slave01の設定にjavaの環境変数を追記。

3
Help us understand the problem. What is going on with this article?
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
3
Help us understand the problem. What is going on with this article?