Jenkins 便利そうなので設定してみた、初めてJenkins触ってみる
インストールから docker run Hello world まで設定した。
#インストール
Kitematic から official な Jenkinsイメージ 入れたけど Dockerコマンドが入ってなかった
なのでdind(Docker in docker)な Jenkins repo を探した。
いくつか試してみてこれが良い感じだった
初期設定はこの記事を見た
#プラグイン
- プラグインはおすすめ設定「Install suggested plugins」を選択
- ThinBackup
#設定
何か起きたときにお知らせするgmailの設定
JenkinisのTOPページより [Jenkins の管理] - [システムの設定] - [E-mail 通知] [SMTP サーバー] に smtp.googlemail.com [E-mail のサフィックス] に @gmail.com [SMTP 認証] にチェック [ユーザ名] と [パスワード] に Gmail のメールアドレスとパスワード [SSL] にチェック [SMTP ポート] に 465
dockerできるようになったけどdocker service 上がってない
docker: Cannot connect to the Docker daemon. Is the docker daemon running on this host?.
このdockerイメージはsudoコマンドも入ってなかったので
Kitematicの左下の DockerCLIボタンで Jenkins-dockerの外側から
rootでsh起動してサービス上げた
docker exec -u root -it jenkins2-dind sh
service docker start #Docker daemon起動
[ ok ] Starting Docker: docker.
systemctl enable docker #Docker をブート時に自動起動
Synchronizing state for docker.service with sysvinit using update-rc.d...
Executing /usr/sbin/update-rc.d docker defaults
Executing /usr/sbin/update-rc.d docker enable
ついでに時間がずれていたので、タイムゾーン(Timezone)変更
### オリジナルをバックアップ cp /etc/localtime /etc/localtime.org ### タイムゾーンファイルの変更 ln -sf /usr/share/zoneinfo/Asia/Tokyo /etc/localtime
ついでに/usr/share/jenkinsの書き込み権限が無いので、Jenkinsの自動アップデートができない件
chown -R jenkins:jenkins /usr/share/jenkins
Jenkinsの自動アップデートができないなら、書き込み権限を見なおそう
JenkinsのGUIから新規ジョブを作成してビルド手順の追加
設定画面からシェル実行を選択して以下のコマンドを設定
docker run ubuntu:14.04 /bin/echo 'Hello world'
ビルド実行
Status: Downloaded newer image for ubuntu:14.04
Hello world
Finished: SUCCESS
できた!