こちらを特に参考にさせて頂きました。
さくらのVPSでJenkins -執事さんとご対面- - PPl@ce
さくらVPSにJenkinsさんをインストールする - TOKOROM BLOG

Jenkinsとは

・CI(継続的インテグレーション)ツール。CIとはビルドやテストの間隔を短くし、フィードバックのサイクルを短くする手法?
・ビルドやテストの自動化ができる
・プラグインで拡張可能
・コマンドでできる事ならなんでも自動化可能
・Jenkinsとはイギリス人の執事をイメージにした名前。
・HudsonからJenkinsに名称変更があったため、Hudsonで調べた方が情報が見つかる場合があるかもしれない。
・現在のロゴは2011年のコンテストから選ばれたもの。(The polls are open for the Jenkins Logo Contest! | Jenkins CI
・2000年頃にXPのプラクティスの1つとしてCIの手法が確立。Jenkinsの前身であるHudsonは2004年に川口氏の個人プロジェクトから開始、その後氏が所属していたSun Mycrosystemsと有志のコミュニティで開発が進んだ。SunがOracleに買収された後も開発は進んだが、Oracleとの商標問題とかで2011年にHudsonからJenkinsへの改名があった。(かなりはしょった説明です。歴史はここに詳しい。レポート:「第2回Jenkins勉強会」活動報告|gihyo.jp … 技術評論社

jenkins_logo

Jenkinsインストール

JDKがインストールされていない場合、先にインストールしておきましょう。
Jenkinsはリポジトリを追加してからインストールします。
$ sudo wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins-ci.org/redhat/jenkins.repo
$ sudo rpm --import http://pkg.jenkins-ci.org/redhat/jenkins-ci.org.key
$ sudo yum install jenkins
(日本語のJenkins Wikiではjenkins.warをダウンロードしてjava -jar jenkins.warを実行とありますが、英語の本家サイトに合わせてこちらの方法でインストールを行いました。)

ポート関係

該当ポート番号をあける為、iptablesの設定を変更。
$ sudo vim /etc/sysconfig/iptables
これを追加して8080番ポートを空ける:
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 8080  -j ACCEPT
追加したら再起動
$ sudo /etc/rc.d/init.d/iptables restart


起動

$ sudo service jenkins start
この状態で8080番にアクセス(http://yourhost:8080/)して、何か見えれば成功です。しかしこのままでは誰にでもJenkinsが見えている状態で非常に危険です。認証をかけましょう。

認証をかける

デフォルトの設定では、このサイトにアクセスする全員がビルドとかも可能な状態になっています。方法としては2通りあり、Jenkins自体の設定によりユーザーを作成する方法と、JenkinsのURLにApache側で認証を設定する方法です。

Jenkinsのユーザー設定

今回はやりませんでしたが、方法を記載しておきます。
Jenkinsをブラウザで開いて、「Jenkinsの管理」->「システムの設定」->「セキュリティを有効化」にチェック->「アクセス制御」の「ユーザー情報」からユーザーを設定します。Jenkinsに個別にユーザーを登録する場合は「Jenkinsのユーザーデータベース」を、Unixのユーザーと同じにしたい場合は「Unix ユーザー/グループ データベース」を選択するようです。

今回はJenkinsにユーザーを登録します。この画面で「ユーザー情報」の「Jenkinsのユーザーデータベース」にチェックを入れ「Jenkinsのユーザーデータベース」にもチェック。「権限管理」の「行列による権限設定(プロジェクト単位)」にチェックを入れ、「追加するユーザー/グループ:」からユーザーを追加。その後Jenkinsのトップ画面からパスワードとか無しでログインすれば完了です。
こちらが詳しいです。Hudsonの操作権限をユーザ/グループ/ロール別に制御する - ふぞろいのGENGOたち

Digest認証の設定、URL変更、ポート変更

次の3つの設定を行います。
・Digest認証をつける
・URLの変更。「http://yourhost:8080/」ではなく「http://yourhost/jenkins」でアクセスできるようにします。
・他とかぶらないようにポート番号を変更しておきます。

jenkinsの設定ファイルを編集してURLとポートを変更してみましょう。
$ sudo vim /etc/sysconfig/jenkins
この2カ所を編集します。適当なポート番号を設定し、prefixに/jenkinsを指定します。
JENKINS_PORT="29191"
JENKINS_ARGS="––prefix=/jenkins"

iptablesに設定したポートば番号も、この設定に合わせて変更しておきましょう。

適当な外から見えないディレクトリにて、ダイジェスト認証に必要な.htdigestファイルを作成する。ここでの領域名は、次に作成するApache向け設定ファイルのAuthNameと同じにする。(初めてこのコマンドを実行する場合は-cオプションをつける。初めてでない場合、元のファイルが消されるらしいので注意すること)
$ sudo htdigest -c /etc/httpd/conf/.htdigest Jenkins jenkins
($ htdigest -c パスワードファイル名 領域名 ユーザー名)
パスワードを聞かれますので自分で決めて入力すると、ファイルが生成されます。中に色々書かれたファイルが生成された事を確認しておきましょう。

次にApache向けの設定ファイルを作成します。
$ sudo vim /etc/httpd/conf.d/jenkins.conf
中身は以下の通り。(これホントに正しいのかな...。)
ProxyPass /jenkins http://localhost:29191/jenkins
ProxyPassReverse /jenkins http://localhost:29191/jenkins
ProxyRequests Off

<Proxy http://localhost:29191/jenkins*>
Order deny,allow
Allow from all

AuthType Digest
AuthName Jenkins
AuthUserFile /etc/httpd/conf/.htdigest
Require valid-user
</Proxy>
保存したらApacheの再起動をします。
$ sudo /etc/rc.d/init.d/httpd restart
この状態で「sudo service jenkins restart」し、http://yourhost/jenkinsにアクセスしましょう。ちゃんとパスワードが聞かれるか、Jenkinsは正常か、を確認します。

自動起動の設定

$ sudo chkconfig jenkins on
確認します。
$ /sbin/chkconfig --list | grep jenkins
登録されていますね。これでJenkinsが使えるようになりました。

資料

レポート:「第2回Jenkins勉強会」活動報告|gihyo.jp … 技術評論社
Meet Jenkins - 日本語 - Jenkins Wiki
Jenkinsではじめる継続的インテグレーション
さくらVPSにJenkinsさんをインストールする - TOKOROM BLOG
RedHat Repository for Jenkins
さくらVPSにjenkinsを入れてみたときの備忘録 | ミラボ
さくらのVPSで動いているApacheの不要モジュールを削除する | Webエンジニアライフ
さくらのVPSでJenkins -執事さんとご対面- - PPl@ce
Jenkins + Apache2 (Basic認証) の環境を構築する for CentOS 5.6 [x86_64] - ワンカップとイカちゃん
Securing Jenkins - 日本語 - Jenkins Wiki
ADD Ubuntu Server 11.10(64bit)にJenkinsをインストール
@IT:Apacheでユーザー認証を行うには(Digest認証編)
jenkinsとapacheの連携 - Dev3TechHack
Hudsonの操作権限をユーザ/グループ/ロール別に制御する - ふぞろいのGENGOたち
Jenkinsことはじめ - 技芸のおぼえがき