#Jenkinsについて
継続的インテグレーションの代名詞のようなツールですね。
知ってる人は読み飛ばしてくださいw
繰り返し運用するような作業の間違い(品質)や作業時間の短縮(納期短縮)等を手伝ってくれるツールです。
使いどころ
自分はよく以下のようなことで使いますね。
- テスト
- デプロイ
細かいのは上げればきりがないのですが、上記のような何回もやるような作業は登録しておくといいです。誰が何時やったか残りますし、誰がやっても同じ結果になるという点ではいいです。
使うことによっての利点
Shellやbatで単体でも書いても結果は同じだったりもしますが。
以下の点で各自が作って実行するより遥かに優れていると自分は思っています。
- 標準でブラウザベースのUIが付いてくる
- ノウハウのある人が作り、中身をは知らない人でも目的が分かれば運用も可能1
- Shell等だとスクリプトが各マシンに散らばるがJenkins内に集約することができる。
- Linuxのアカウントを使用するとかなり細かく権限を設定できる
Dockerfile
自分はLinuxのアカウントでの管理がグループなども使えて便利かと思っているのでここでユーザーを追加しておきます。
あとは、参考にしたサイトから日本時間にしておきます。
Dockerfile
FROM jenkins
USER root
RUN useradd -m -s /bin/bash -G sudo <useri>
RUN echo "<userid>:<passwd>"|chpasswd
RUN usermod -aG shadow jenkins
ENV JAVA_OPTS -Djava.awt.headless=true -Dorg.apache.commons.jelly.tags.fmt.timeZone=Asia/Tokyo -Dfile.encoding=UTF-8 -Dsun.jnu.encoding=UTF-8
USER jenkins
##Makefile
DockerのMakefileテンプレートの以下の部分だけ差し替える
Makefile
NAME=myjenkins
VERSION=1.0.0
start:
docker run -d \
-p 8080:8080 \
-v /var/jenkins_home:/var/jenkins_home \
--name $(NAME) \
$(NAME):$(VERSION)
実行
$ make build
$ make start
動かしてみたら文字化け(追記)
gitコメントが化けている。UTF−8の設定を追加
そして、gitのコメントが正しく表示されることを確認。
参考サイト
-
デプロイできるとか知っていれば中身を知らなくても良い ↩