(Photo by:Noah Sussman)
Jenkins(https://jenkins-ci.org/)はオープンソースのCIツールです。2011年にDevOpsが話題になってからCIツールが再注目を集めています。
IT業界がDevOpsの流れにある中、主にSaaSですが各社からCIツールが多数リリースされています。その中でもJenkinsは最も有名で高い評価を得ているCIツールです。
ここ数年で登場した人気の類似ツールにはオープンソースではありませんが、TravisCI(https://travis-ci.org/)、CircleCI(https://circleci.com/)、Bamboo(https://www.atlassian.com/ja/software/bamboo)などがあります。
Jenkinsライセンスについて
JenkinsのソースコードはGitHub上(https://github.com/jenkinsci/jenkins)で公開されており、ライセンスはMITです。
Jenkins公式のインストール手順
Jenkins公式で各OSに対応したインストール手順が公開されています(https://wiki.jenkins-ci.org/display/JENKINS/Installing+Jenkins)。今回はUbuntuでのインストール手順を元に説明していきます。(https://wiki.jenkins-ci.org/display/JENKINS/Installing+Jenkins+on+Ubuntu)
Ubuntu 14.04 LTS に Jenkinsをインストール
Jenkinsの利用にはJava7以降が必要です。OpenJDK7(http://openjdk.java.net/)がお奨めされています。
まず現在インストールされているJavaのバージョンを確かめます。この記事の環境ではJavaがインストールされていないため、インストールする所から始めます。
user@ubuntu:~$ java -version
The program 'java' can be found in the following packages: * default-jre * gcj-4.8-jre-headless * openjdk-7-jre-headless * gcj-4.6-jre-headless * openjdk-6-jre-headless Try: sudo apt-get install
コマンドが入っていないのでインストールするパッケージ候補が表示されました。
この中にopenjdk-7-jre-headlessがありますが、これはJavaRuntimeのみのため、JavaDeveloperKit が含まれているopenjdk-7-jdkをインストールします。
user@ubuntu:~$ sudo apt-get install openjdk-7-jdk
[sudo] password for user: Reading package lists... Done Building dependency tree Reading state information... Done E: Unable to locate package openjdk-7-jdk-headless user@ubuntu:~$ user@ubuntu:~$ sudo apt-get install openjdk-7-jdk Reading package lists... Done Building dependency tree Reading state information... Done The following extra packages will be installed: ...省略... Running hooks in /etc/ca-certificates/update.d.... done. done.
Javaがインストールされているか確認します。
user@ubuntu:~$ java -version
java version "1.7.0_79" OpenJDK Runtime Environment (IcedTea 2.5.6) (7u79-2.5.6-0ubuntu1.14.04.1) OpenJDK 64-Bit Server VM (build 24.79-b02, mixed mode)
1.7がインストールされています。いちおうJREとJDKを間違ってインストールしていないかを確かめます。JREにはjavacコマンドが含まれていないのでjavacを実行してみます。
user@ubuntu:~$ javac -version
javac 1.7.0_79
これで前提条件になっているJavaのインストールが完了です。
次に本題のJenkinsに移ります。jenkins-ci.org.keyを取得して信頼キーのリストに追加します。
user@ubuntu:~$ wget -q -O - https://jenkins-ci.org/debian/jenkins-ci.org.key | sudo apt-key add -
OK
パッケージのダウンロード元を記述しているディレクトリにJenkinsを追加するワンライナーを実行します。
この時点ではまだ /etc/apt/sources.list.d/ 以下にjenkins.listがありません。
user@ubuntu:~$ ls -la /etc/apt/sources.list.d/
total 28 drwxr-xr-x 2 root root 4096 8月 29 21:11 . drwxr-xr-x 6 root root 4096 9月 5 02:23 .. -rw-r--r-- 1 root root 134 8月 29 21:11 ansible-ansible-trusty.list -rw-r--r-- 1 root root 58 8月 29 21:11 docker.list -rw-r--r-- 1 root root 58 8月 29 21:11 docker.list.save -rw-r--r-- 1 root root 393 8月 29 21:11 ubuntu-ja.list -rw-r--r-- 1 root root 393 8月 29 21:11 ubuntu-ja.list.save
以下コマンドを実行します。出力は何もありません。
user@ubuntu:~$ sudo sh -c 'echo deb http://pkg.jenkins-ci.org/debian binary/ > /etc/apt/sources.list.d/jenkins.list'
いちおうファイルが出来ていて、ファイルの内容が上で実行した内容になっているのか確認します。
user@ubuntu:~$ cat /etc/apt/sources.list.d/jenkins.list
deb http://pkg.jenkins-ci.org/debian binary/
大丈夫ですね。次にパッケージリストを更新します。
user@ubuntu:~$ sudo apt-get update
...省略...
パッケージリストの更新結果は省略します。いよいよJenkinsのインストールです。
user@ubuntu:~$ sudo apt-get install jenkins
Reading package lists... Done Building dependency tree Reading state information... Done The following extra packages will be installed: daemon The following NEW packages will be installed: daemon jenkins 0 upgraded, 2 newly installed, 0 to remove and 110 not upgraded. Need to get 63.0 MB of archives. After this operation, 63.6 MB of additional disk space will be used. Do you want to continue? [Y/n] Y Get:1 http://us.archive.ubuntu.com/ubuntu/ trusty/universe daemon amd64 0.6.4-1 [98.2 kB] Get:2 http://pkg.jenkins-ci.org/debian/ binary/ jenkins 1.627 [62.9 MB] Fetched 63.0 MB in 16s (3,859 kB/s) Selecting previously unselected package daemon. (Reading database ... 207716 files and directories currently installed.) Preparing to unpack .../daemon_0.6.4-1_amd64.deb ... Unpacking daemon (0.6.4-1) ... Selecting previously unselected package jenkins. Preparing to unpack .../archives/jenkins_1.627_all.deb ... Unpacking jenkins (1.627) ... Processing triggers for man-db (2.6.7.1-1ubuntu1) ... Processing triggers for ureadahead (0.100.0-16) ... ureadahead will be reprofiled on next reboot Setting up daemon (0.6.4-1) ... Setting up jenkins (1.627) ... * Starting Jenkins Continuous Integration Server jenkins [ OK ] Processing triggers for ureadahead (0.100.0-16) ...
インストールに成功しました。Jenkinsサーバーが起動中とあるのでウェブブラウザからアクセスしてみます。デフォルトでは8080ポートを利用しています。
Jenkinsが起動していることが確認できました。Jenkinsはサービスとして登録されていますので、ポート番号を変更する等の設定変更を行った後はリスタートを行います。
user@ubuntu:~$ sudo service jenkins restart
* Restarting Jenkins Continuous Integration Server jenkins
インストール手順はここまでです。
Jenkinsの導入について
比較的スムーズにインストールできるかと思います。
ミドルウェアの人気にインストールし易さが影響しているおかげか、ここ数年のミドルウェアはインストール手順や要点がドキュメントに良くまとめられており、昔のように失敗し原因も分からないので諦める事が減りました。
DockerHubでJenkinsが公開されています(https://hub.docker.com/_/jenkins/)。GitHub上のURLはこちらです(https://github.com/jenkinsci/docker)。Dockerを利用されている方はDockerHubを利用する方がスムーズにインストールできます。
本ブログは、Git / Subversionのクラウド型ホスティングサービス「tracpath(トラックパス)」を提供している株式会社オープングルーヴが運営しています。
エンタープライズ向け Git / Subversion 導入や DevOps による開発の効率化を検討している法人様必見!
「tracpath(トラックパス)」は、企業内の情報システム部門や、ソフトウェア開発・アプリケーション開発チームに対して、開発の効率化を支援し、品質向上を実現します。
さらに、システム運用の効率化・自動化支援サービスも提供しています。
”つくる情熱を支えるサービス”を提供し、まるで専属のインフラエンジニアのように、あなたのチームを支えていきます。
No Comments