目的
個人的なJenkins運用のメモ
ご意見大歓迎!!
Jenkinsの予備知識
インストール方法(centos7)
- rootになる
$ sudo su -
#
- javaのインストール
# wget --no-cookies --no-check-certificate --header "Cookie: oraclelicense=accept-securebackup-cookie" "http://download.oracle.com/otn-pub/java/jdk/8u131-b11/d54c1d3a095b4ff2b6607d096fa80163/jdk-8u131-linux-x64.rpm" -O /var/tmp/jdk-8u131-linux-x64.rpm
# rpm -ivh /var/tmp/jdk-8u131-linux-x64.rpm
- yumリポジトリに追加
# wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins-ci.org/redhat-stable/jenkins.repo
- RPMパッケージの公開鍵をインポート
# rpm --import https://jenkins-ci.org/redhat/jenkins-ci.org.key
- jenkinsのインストール
# yum install --enablerepo=jenkins jenkins
- プロセス起動
# systemctl start jenkins
- 自動起動の設定
# systemctl enable jenkins
jenkinsの基本的なファイル構成
- システムの設定ファイル
/etc/sysconfig/jenkins
- 本体.war
/usr/lib/jenkins
- データディレクトリ
/var/lib/jenkins
JenkinsのTips
本体.warはシンボリックリンクで動く
本体は下記のサイトからダウンロード出来る
また、本体の実行ファイルに対してのシンボリックリンクで動くので、下記のように過去のjenkinsのバージョン毎に管理して、付け替え+プロセス再起動でjenkinsのアップデートをすることが可能。
またコードによる自動化も可能
# cd /usr/lib/jenkins/
# tree
.
|-- 2.89
| `-- jenkins.war
|-- 2.92
| `-- jenkins.war
|-- 2.93
| `-- jenkins.war
|-- jenkins.war -> /usr/lib/jenkins/2.93/jenkins.war
`-- jenkins.war.org
データディレクトリもシンボリックリンクで動く
例えば以下のようにしても動く
# ls -1 /opt/
iganari-jenkins
# ls -l /var/lib/
lrwxrwxrwx 1 jenkins root 19 6月 23 21:02 jenkins -> /opt/iganari-jenkins
Pluginディレクトリもディレクトリごとバックアップ出来る
- Pluginが入っているディレクトリ
/var/lib/jenkins/plugins/
- 仮に今のPluginを保持しておきたい場合
# cp -rf plugins /tmp/plugins.$(date +"%Y%m%d")