Jenkins
| Docker |
目次
Jenkins
Install(Docker)
ブリッジネットワークの作成
$ docker network create jenkins
Jenkins内部からDockerを利用可能にする
- Docker in Docker docker:dind
- Docker コンテナ(Jenkins 稼動)上で Docker コンテナ(テスト用DB 稼動)を動かすことになります。これを Docker in Docker といいます
- Jenkins コンテナのベースイメージとして docker:dind を使用すると、コンテナ上から docker を実行できるようになります
$ docker run \ --name jenkins-docker \ --rm \ --detach \ --privileged \ --network jenkins \ --network-alias docker \ --env DOCKER_TLS_CERTDIR=/certs \ --volume jenkins-docker-certs:/certs/client \ --volume jenkins-data:/var/jenkins_home \ --publish 2376:2376 \ docker:dind \ --storage-driver overlay2 $ docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES f15315bf5752 docker:dind "dockerd-entrypoint.…" 6 minutes ago Up 6 minutes 2375/tcp, 0.0.0.0:2376->2376/tcp, :::2376->2376/tcp jenkins-docker
公式Dockerイメージをカスタマイズ
- 以下の内容を、”Dockerfile" として保存
FROM jenkins/jenkins:2.277.4-lts-jdk11
USER root
RUN apt-get update && apt-get install -y apt-transport-https \
ca-certificates curl gnupg2 \
software-properties-common
RUN curl -fsSL https://download.docker.com/linux/debian/gpg | apt-key add -
RUN apt-key fingerprint 0EBFCD88
RUN add-apt-repository \
"deb [arch=amd64] https://download.docker.com/linux/debian \
$(lsb_release -cs) stable"
RUN apt-get update && apt-get install -y docker-ce-cli
USER jenkins
RUN jenkins-plugin-cli --plugins "blueocean:1.24.6 docker-workflow:1.26"
- "myjenkins-blueocean:1.1" など意味のあるタグを付与して実行
$ docker build -t myjenkins-blueocean:1.1 .
© 2006 矢木浩人