LoginSignup
17
22

More than 3 years have passed since last update.

AWS の EC2 インスタンス(Amazon Linux)に Jenkins 2 をインストールする

Last updated at Posted at 2018-06-16

はじめに

こんにちは。
お仕事では Atlassian Bamboo を利用している者です。

最近は Jenkins とはご無沙汰となってしまっていまいました。
AWSのEC2インスタンス(Amazon Linux)にJenkinsをインストールする」から早くも3年の月日が経ちました。

今回は、父の日も近いということで、私にとって「CI のお父さん的存在」である Jenkins おじさんに敬意を表し、最新版を EC2 にインストールしてみます。

EC2 インスタンスの作成

  • EC2 インスタンスを作成します。パラメータはお好みで。私は以下のようにしました。

    • AMI は Amazon Linux
    • インスタンスタイプは t2.micro
    • デフォルト VPC
    • Public IP は有効
    • セキュリティグループで SSH 22番、TCP 8080番を IP アドレス指定で許可
  • SSH ログイン後、パッケージをアップデートしておきます。

$ sudo yum update

JDK 8 のインストール

Amazon Linux には JDK 7 がインストール済みですが、
最新の Jenkins は Java 8 が必要とのことなので、バージョンアップを行います。

  • 現在のバージョンを確認
$ java -version
java version "1.7.0_181"
OpenJDK Runtime Environment (amzn-2.6.14.8.80.amzn1-x86_64 u181-b00)
OpenJDK 64-Bit Server VM (build 24.181-b00, mixed mode)
  • JDK 8 のインストール
$ sudo yum install java-1.8.0-openjdk-devel.x86_64
  • デフォルトの JDK を変更
$ sudo alternatives --config java

There are 2 programs which provide 'java'.

  Selection    Command
-----------------------------------------------
*+ 1           /usr/lib/jvm/jre-1.7.0-openjdk.x86_64/bin/java
   2           /usr/lib/jvm/jre-1.8.0-openjdk.x86_64/bin/java

Enter to keep the current selection[+], or type selection number: 2
  • バージョンを確認
$ java -version
openjdk version "1.8.0_171"
OpenJDK Runtime Environment (build 1.8.0_171-b10)
OpenJDK 64-Bit Server VM (build 25.171-b10, mixed mode)

Jenkins のインストール

  • yum のリポジトリを追加します。
$ sudo wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat/jenkins.repo
$ sudo rpm --import https://pkg.jenkins.io/redhat/jenkins.io.key
  • Jenkins をインストールします。
$ sudo yum install jenkins
  • 2.127 がインストールされました。
$ rpm -qa | grep jenkins
jenkins-2.127-1.1.noarch
  • ランレベル3と5で自動起動になっているようです。
$ chkconfig --list jenkins
jenkins         0:off   1:off   2:off   3:on    4:off   5:on    6:off

Jenkins の起動

  • 起動します。
$ sudo service jenkins start
  • ブラウザで Jenkins の URL にアクセスします。
http://<EC2インスタンスのパブリックDNS or IP>:8080/

Jenkins の初期設定

おお!この画面は初めて見ました。
最近の Jenkins はウィザードにしたがって初期設定を行うようです。

  • 初期パスワードを設定して Jenkins のロックを解除

Jenkins のホームディレクトリに初期パスワードファイルが書き込まれているので、このパスワードを入力します。

Capture 2018-06-06 at 9.23.39.png

  • プラグインのインストール

とりあえず、おすすめプラグインを選択しておきます。

Capture 2018-06-06 at 9.23.52.png

Capture 2018-06-06 at 9.24.16.png

  • 管理者ユーザーの追加

Capture 2018-06-06 at 9.25.00.png

  • URL の設定

Capture 2018-06-06 at 9.27.14.png

最初のビルド

"Hello" を echo するだけのサンプルジョブを作ってみます。

  • 新しいジョブの作成
    Capture 2018-06-06 at 9.30.04.png

  • 名前とタイプを指定
    Capture 2018-06-06 at 9.30.56.png

  • ビルド手順の追加

シェルの実行 を選択して、シェルスクリプトを書きます。

Capture 2018-06-06 at 9.31.57.png

  • ビルドを実行
    Capture 2018-06-06 at 9.32.14.png

  • ビルド結果の確認

Capture 2018-06-06 at 9.33.20.png

Capture 2018-06-06 at 9.32.53.png

おわりに

オールドユーザーの私にとって、セットアップウィザードが新鮮でした。
ジョブの作成手順やビルド画面は昔の Jenkins おじさんのままで安心しました。

以上でインストールと動作確認は完了です。
このあとは EC2 インスタンスの再起動後に URL が変わってしまうので、EIP を割り当てた後、Route 53 などの DNS サービスで URL を固定化してあげると良いでしょう。

参考

17
22
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
17
22