ヤサイブログ

I'll keep hacking on fun.

VagrantでJenkinsのDocker Imageを起動する

手元のPCがあれば、いつでも始められるCI!

Vagrantの初期セットアップは下記の記事をご参照下さい。
xblood.hatenablog.com

DockerでJenkinsを起動する

Docker Imagesの取得

sudo su
# JenkinsのLTSイメージを取得する
docker pull jenkinsci/jenkins:lts

Jenkins Imageをバックグラウンド起動する

# -vオプションで、コンテナが停止した時のためにJenkins関連ファイルを永続化する
# --restartオプションで、vagrantが起動した時に自動起動するように 
docker run -d -v jenkins_home:/var/jenkins_home -p 8080:8080 -p 50000:50000 -e "TZ=Asia/Tokyo" --restart=always jenkinsci/jenkins:lts
自動起動を停止させたい場合
# Nameをgrepで取得する
sudo docker inspect -f "{{.Name}} {{.HostConfig.RestartPolicy.Name}}" $(sudo docker ps -aq) | grep always
# update --restart=noを設定する。引数となるのはコンテナのNAME
sudo docker update --restart=no $Name

コンテナIDを確認する

docker ps
# 以下のような結果が表示される
CONTAINER ID        IMAGE                   COMMAND                  CREATED             STATUS              PORTS                                              NAMES
850da8fef9f2        jenkinsci/jenkins:lts   "/sbin/tini -- /usr/…"   7 minutes ago       Up 7 minutes        0.0.0.0:8080->8080/tcp, 0.0.0.0:50000->50000/tcp   nostalgic_lamport

コンテナIDを指定してコンテナ内に入り、初期パスワードをメモする

# execコマンドを使用
docker exec -i -t $PROCESSID /bin/bash

# 初期パスワード確認
cd
cd secrets/
cat ./initialAdminPassword

ブラウザからアクセス

メモしておいた初期パスワードを入力し、セットアップを進めます。
無事に初期画面までたどり着きました!
f:id:yasay:20180705145210p:plain

以上です!この続きのエントリーは
「Spring BootのGradleプロジェクトをJenkinsでCIしてみる」になります!
xblood.hatenablog.com