LoginSignup
15
13

More than 5 years have passed since last update.

さくらVPSのDebian7.1にjenkinsを入れた

Posted at

個人で持っているサーバーが思えばcrontabぐらいしか使ってなくて、
webサーバーとしての用途は中途半端に使っているだけだったので
いっその事分けてしまおうと。
そいでcrontabだけだったらJenkins氏を雇用してみようという試み。

EC2で構築してもよかったのですが
さくらVPSのサーバーをそんなに活用していなかったし、Jenkins氏のビルド後のログ貯めておきたいからディスク容量もそこそこあるのでさくらVPSで。
さくらVPSで使っていたDebian6をOS再インストールしてJenkinsサーバーを構築
業務ではCentOSしか触っていないのですが個人のサーバーくらいはDebian使いたかったのでDebian使用。

ちなみにMac OS X 10.8 Mountain LionだとさくらVPSのOSカスタムインストール、
VNCコンソールを開くためにはJava 6を入れておく必要がある。
MacでさくらVPSのVNC

以後はdebian7のインストール済み&sudo権限ユーザーでsshログイン済み前提

jenkinsインストール

参考
https://wiki.jenkins-ci.org/display/JENKINS/Installing+Jenkins+on+Ubuntu

wget -q -O - http://pkg.jenkins-ci.org/debian/jenkins-ci.org.key | sudo apt-key add -
sudo sh -c 'echo deb http://pkg.jenkins-ci.org/debian binary/ > /etc/apt/sources.list.d/jenkins.list'
sudo apt-get update
sudo apt-get install jenkins

ブラウザアクセスhttp://<サーバーIP>:8080

これで完了。jenkins氏の恩恵を受けられる。
以下はもろもろの設定。設定考えるのが楽しかったりする。

認証

jenkins氏は基本的に誰でも心を許してしまう。
(インストール時はブラウザ上から誰でも設定を変更できる)
自分だけに従順で姿を表さないJenkins氏に調教する。
(ユーザーを作成し、そのユーザーでしかビルド実行や閲覧できないようにする)

参考
さくらvpsでjenkinsをセットアップし、認証を行うまで

topページからJenkinsの管理グローバルセキュリティの設定
スクリーンショット 2013-07-30 12.07.39.png

セキュリティの有効化にチェック
アクセス制限ユーザー情報
Jenkinsのユーザーデータベースにチェックとユーザーにサインアップを許可にチェック
設定を保存
スクリーンショット 2013-07-30 12.09.37.png

画面右上のサインアップを選択
ユーザーの作成
ここではsoramugiユーザーの作成
ログインを行う。

topページからJenkinsの管理グローバルセキュリティの設定
アクセス制限ユーザー情報
ユーザーにサインアップを許可のチェックを外す

アクセス制限権限管理
行列による権限設定にチェック
匿名ユーザーのチェックを全て外した状態を確認
追加するユーザー/グループ:に作成したユーザーを追加(ここではsoramugiユーザー)
追加したユーザーのチェックを全て付ける
設定を保存
スクリーンショット 2013-07-30 12.17.50.png

念のためログアウトして確認、他のブラウザからアクセスして確認
完了

これで僕らだけのプライベートjenkins氏になった。

port80のapacheでプロキシ噛ませてアクセスする場合

http://<サーバーIP>:8080からhttp://jenkins.<ドメイン名>でアクセス出来るようにしてかっこいいjenkins氏にする。

あらかじめhttp://jenkins.<ドメイン名>でjenkins氏を入れたサーバーを閲覧できるようにAレコードを設定しておく。

参考
https://wiki.jenkins-ci.org/display/JENKINS/Installing+Jenkins+on+Ubuntu

sudo apt-get install apache2
sudo touch /etc/apache2/sites-available/jenkins
sudo vi /etc/apache2/sites-available/jenkins

ci.company.comでアクセスさせる設定

/etc/apache2/sites-available/jenkins
<VirtualHost *:80>
    ServerAdmin webmaster@localhost
    ServerName ci.company.com
    ServerAlias ci
    ProxyRequests Off
    <Proxy *>
        Order deny,allow
        Allow from all
    </Proxy>
    ProxyPreserveHost on
    ProxyPass / http://localhost:8080/
</VirtualHost>
sudo a2enmod proxy
sudo a2enmod proxy_http
sudo a2dissite default
sudo a2ensite jenkins
sudo apache2ctl restart

軽く説明すると
/etc/apache2/sites-available/のディレクトリの中に設定ファイルを作成。
/etc/apache2/sites-enabled/のディレクトリにエイリアスを張って設定を適応させる。
設定適応させたコマンドがsudo a2ensite jenkins
設定解除がsudo a2dissite default
apacheモジュールの設定も同じく。

debianのapache2の設定は基本エイリアスを張り替えてモジュールやヴァーチャルホストの設定をしたりで設定ファイルを直接編集する必要が無い。
親切設計で好きですね。

まとめ

とりあえずこれで大体の設定は完了。
他にもgitプラグイン入れたりcurlコマンドインストールしたりメール送信の設定だったりあるけど
crontabで設定するとしても同じ作業になるだろうし、jenkinsのプラグインをいれるのはとても簡単で楽。

実行時のログも勝手に保存してくれるので定期処理ばしばし作って行きたいですねー

15
13
0

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
15
13