どうも、久々の更新です。
最近全然触れていませんでしたが、久々にテック系の記事を自分的メモベースでまとめます。
今回は無料で導入できるCIサーバーとして有名なjenkinsの後継版「jenkins2」の導入方法です。
※今回の検証環境はAWSのEC2で、対象はAmazon Linuxです。
まず、yumでインストールするために本家からリポジトリファイルをダウンロードして配置します。
#wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins-ci.org/redhat/jenkins.repo
次にこのリポジトリを利用するための公開鍵を公式から取りこみます。
#rpm --import https://jenkins-ci.org/redhat/jenkins-ci.org.key
そしてjenkinsとjavaのインストールを実行します。
#yum install -y jenkins
#yum install -y java
このとき、念のためにjavaのバージョンを確認しておきましょう。
#java -version
java version "1.7.0_111"
OpenJDK Runtime Environment (amzn-2.6.7.2.68.amzn1-x86_64 u111-b01)
OpenJDK 64-Bit Server VM (build 24.111-b01, mixed mode)
そうそう……ブラウザから操作を行うので、リバースプロキシを使用するためにnginxもインストールしておきましょう。
#yum install -y nginx
/etc/nginx/nginx.confを編集し、location / {}のディレクティブに変更を加えましょう。
# jenkinsのリバースプロキシ設定
location / {
# ベーシック認証入れる場合は以下の3行のような感じにする
# auth_basic "jenkins server";
# auth_basic_user_file /usr/local/nginx/conf/.htpasswd;
# proxy_set_header Authorization "";
proxy_set_header Host $host;
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_pass http://localhost:8080/;
}
※ベーシック認証をかける場合は上の3行のコメントアウトを外し、/usr/local/nginx/conf/配下に.htpasswdファイルを用意しましょう。
※ベーシック認証をかける場合、proxy_set_headerが無いと確かリバースプロキシが上手く行かなかったと思うので注意してください。
準備が整ったらjenkinsとnginxを起動します。
あっ、必要ならiptablesの80ポート許可とAWSのセキュリティグループでの80ポート許可を忘れずに!
#/etc/init.d/jenkins start
#/etc/init.d/nginx start
最後にhttp://(サーバーのIP)/にブラウザでアクセスして、無事に以下の画面がでれば完了!
後は画面の指示に従って設定を行っていくだけです。
※最初だけ、画面に表示されたパスにあるファイルの内容をコピーし貼り付けを行う必要があるので注意です。
#less /var/lib/jenkins/secrets/initialAdminPassword
そんな感じ。
※ エンジニア系のネタは下のブログに移行中です。