Ubuntu サーバーに Jenkins をインストールしたのでその覚え書きです。 Apache のプロキシを利用して, www.example.com/jenkins/ にアクセスすると Jenkins のホームページが表示されるようにします。
Ubuntu の公式リポジトリでは Jenkins は提供されていないので, Jenkins のリポジトリを利用します。リンク先に書いてある通りにやるだけです。次の行を /etc/apt/sources.list に追加。
deb http://pkg.jenkins-ci.org/debian binary/
以下のコマンドを実行。
wget -q -O - http://pkg.jenkins-ci.org/debian/jenkins-ci.org.key | sudo apt-key add - sudo aptitude update sudo aptitude install jenkins
デフォルトでは Jenkins は 8080 番ポートを利用しますが,他のサーバーがこのポートを利用している場合は起動に失敗します。失敗した場合は次の設定ファイルでポート番号を変更してから以下のコマンドで起動します。
sudo /etc/init.d/jenkins start # 再起動は restart。
Jenkins の設定ファイルは /etc/default/jenkins です。これを修正します。
# 8080 番ポートを別のサーバーが利用している場合は変更する。 HTTP_PORT=8080 # 末尾に --prefix=/jenkins を追加 JENKINS_ARGS="--webroot=/var/run/jenkins/war --httpPort=$HTTP_PORT --ajp13Port=$AJP_PORT --prefix=/jenkins"
Apache のプロキシを利用するために, mod_proxy を有効化します。
sudo a2enmod proxy sudo a2enmod proxy_http
Apache のサイト設定ファイルに以下を追加します。
# 自分の環境に合わせて適当に設定。以下は全部許可。 <Proxy *> Allow from all </Proxy> # 上でポート番号を変えている場合は適宜修正。 ProxyPass /jenkins http://127.0.0.1:8080/jenkins ProxyPassReverse /jenkins http://127.0.0.1:8080/jenkins RedirectMatch permanent ^/jenkins$ /jenkins/
最後に Apache を再起動して完成。
sudo /etc/init.d/apache2 restart
http://www.example.com/jenkins にアクセスすると Jenkins の管理画面が表示されます。セキュリティ関連は個人のお好みで。
さて,インストールしたのは良いのですが,何に使おうかは考え中です。とりあえずは CRON ジョブを Jenkins に置き換えてみようかな。