--- title: Ubuntu 12.04 に jenkins をインストールする author: kazu634 date: 2012-07-29 url: /2012/07/29/_1778/ wordtwit_post_info: - 'O:8:"stdClass":13:{s:6:"manual";b:0;s:11:"tweet_times";i:1;s:5:"delay";i:0;s:7:"enabled";i:1;s:10:"separation";s:2:"60";s:7:"version";s:3:"3.7";s:14:"tweet_template";b:0;s:6:"status";i:2;s:6:"result";a:0:{}s:13:"tweet_counter";i:2;s:13:"tweet_log_ids";a:1:{i:0;i:5465;}s:9:"hash_tags";a:0:{}s:8:"accounts";a:1:{i:0;s:7:"kazu634";}}' categories: - jenkins - ubuntu ---

» Jenkins ユーザ・カンファレンス 2012 東京 日本Jenkinsユーザ会に参加してきました。

参加した目的としては

  1. CIツールの目的を知りたい
  2. jenkins で何ができるのかを知りたい
  3. どのようなことを運用するときに気をつけるべきなのか知りたい
  4. CIツールとしてではない jenkins の使い方を知りたい

などといった目的で参加しました。いろいろな発表を聞いて、CIツールの概要・目的、jenkinsの使われ方が理解できたと思います。

そこでさっそく家の VM に jenkins をインストールしてみました。

参考にしたサイト

インストールログ

Ubuntu 12.04に jenkins をインストールしました。構成としてはフロントエンドに nginx を使用し、バックエンドの 8080 ポートに jenkins をインストールします:

jenkinsのインストール
$ wget -q -O - http://pkg.jenkins-ci.org/debian/jenkins-ci.org.key | sudo apt-key add -
[sudo] password for kazu634:
OK
$ sudo sh -c 'echo deb http://pkg.jenkins-ci.org/debian binary/ > /etc/apt/sources.list.d/jenkins.list'
$ ll /etc/apt/sources.list.d/
total 12
drwxr-xr-x 2 root root 4096  729 22:38 ./
drwxr-xr-x 6 root root 4096  729 22:37 ../
-rw-r--r-- 1 root root   45  729 22:38 jenkins.list
$ sudo aptitude update
[...]
$ sudo aptitude install jenkins
The following NEW packages will be installed:
ca-certificates-java{a} daemon{a} fontconfig{a} fontconfig-config{a} hicolor-icon-theme{a} icedtea-6-jre-cacao{a}
icedtea-6-jre-jamvm{a} icedtea-netx{a} icedtea-netx-common{a} java-common{a} jenkins libasound2{a} libasyncns0{a}
libatk-wrapper-java{a} libatk-wrapper-java-jni{a} libatk1.0-0{a} libatk1.-data{a} libavahi-client3{a}
libavahi-common-data{a} libavahi-common3{a} libcairo2{a} libcups2{a} libdatrie1{a} libflac8{a} libfontconfig1{a}
libgdk-pixbuf2.0-0{a} libgdk-pixbuf2.-common{a} libgif4{a} libgtk2.0-0{a} libgtk2.-bin{a} libgtk2.-common{a}
libjasper1{a} libjpeg-turbo8{a} libjpeg8{a} libjson0{a} libnspr4{a} libnss3{a} libnss3-1d{a} libogg0{a}
libpango1.0-0{a} libpcsclite1{a} libpixman-1-0{a} libpulse0{a} libsndfile1{a} libthai-data{a} libthai0{a}
libtiff4{a} libvorbis0a{a} libvorbisenc2{a} libxcb-render0{a} libxcb-shm0{a} libxcomposite1{a} libxcursor1{a}
libxdamage1{a} libxfixes3{a} libxft2{a} libxi6{a} libxinerama1{a} libxrandr2{a} libxrender1{a} libxtst6{a}
openjdk-6-jre{a} openjdk-6-jre-headless{a} openjdk-6-jre-lib{a} shared-mime-info{a} ttf-dejavu-core{a}
ttf-dejavu-extra{a} tzdata-java{a} x11-common{a}
 packages upgraded, 69 newly installed,  to remove and  not upgraded.
Need to get 96.1 MB of archives. After unpacking 181 MB will be used.
Do you want to continue? [Y/n/?] y
[...]
nginxのインストール
$ sudo -s
# nginx=stable
# add-apt-repository ppa:nginx/$nginx
The program 'add-apt-repository' is currently not installed.  You can install it by typing:
apt-get install python-software-properties
# echo "deb http://ppa.launchpad.net/nginx/$nginx/ubuntu lucid main" > /etc/apt/sources.list.d/nginx-
$nginx-lucid.list
# apt-key adv --keyserver keyserver.ubuntu.com --recv-keys C300EE8C
Executing: gpg --ignore-time-conflict --no-options --no-default-keyring --secret-keyring /tmp/tmp.UpyY1fEVhQ --trustdb-n
ame /etc/apt/trustdb.gpg --keyring /etc/apt/trusted.gpg --primary-keyring /etc/apt/trusted.gpg --keyserver keyserver.ubu
ntu.com --recv-keys C300EE8C
gpg: requesting key C300EE8C from hkp server keyserver.ubuntu.com
gpg: key C300EE8C: public key "Launchpad Stable" imported
gpg: no ultimately trusted keys found
gpg: Total number processed: 1
gpg:               imported: 1  (RSA: 1)
# apt-get update
[...]
# apt-get install nginx
$ cd /etc/nginx/sites-available
$ sudo rm default
[sudo] password for kazu634:
$ sudo vi jenkins
$ cat jenkins
upstream app_server {
server 127...1:8080 fail_timeout=;
}
server {
listen 80;
server_name _;
location / {
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_redirect off;
if (!-f $request_filename) {
proxy_pass http://app_server;
break;
}
}
}
$ sudo ln -s /etc/nginx/sites-available/jenkins /etc/nginx/sites-enabled/
$ sudo service nginx restart

アクセスしてみる

f:id:sirocco634:20120729234752j:image:w360