CentOS5.8にJenkinsをインストールする。
・JDKのインストール
OpenJDK1.6だとWebブラウザアクセス時に「このサーバーは、AWTが正しく設定されていません」が表示されるので、Oracleが提供するJDK1.6を使う。
http://www.oracle.com/technetwork/java/javase/downloads/jdk-6u32-downloads-1594644.html より
jdk-6u32-linux-i586-rpm.binをダウンロードする。
[root@goodjob src]# cp /mnt/hgfs/Desktop/openam/jdk-6u32-linux-i586-rpm.bin /usr/local/src
[root@goodjob src]# ./jdk-6u32-linux-i586-rpm.bin
・JenkinsのRPMパッケージの公開鍵のインポート
[root@goodjob redmine]# wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins-ci.org/redhat/jenkins.repo
--2012-05-02 06:35:07-- http://pkg.jenkins-ci.org/redhat/jenkins.repo
pkg.jenkins-ci.org をDNSに問いあわせています... 63.246.20.93
pkg.jenkins-ci.org|63.246.20.93|:80 に接続しています... 接続しました。
HTTP による接続要求を送信しました、応答を待っています... 200 OK
長さ: 75 [text/plain]
`/etc/yum.repos.d/jenkins.repo' に保存中
100%[======================================>] 75 --.-K/s 時間 0s
2012-05-02 06:35:07 (9.47 MB/s) - `/etc/yum.repos.d/jenkins.repo' へ保存完了 [75/75]
[root@goodjob redmine]# rpm --import http://pkg.jenkins-ci.org/redhat/jenkins-ci.org.key
・Jenkinsのインストール
[root@goodjob redmine]# yum install jenkins
<省略>
Transaction Summary
================================================================================
Install 1 Package(s)
Upgrade 0 Package(s)
Total download size: 48 M
Is this ok [y/N]: y
Downloading Packages:
jenkins-1.462-1.1.noarch.rpm | 48 MB 05:17
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
Installing : jenkins 1/1
warning: /etc/yum.repos.d/jenkins.repo created as /etc/yum.repos.d/jenkins.repo.rpmnew
Installed:
jenkins.noarch 0:1.462-1.1
Complete!
[root@goodjob redmine]# /sbin/service jenkins start
Starting Jenkins [ OK ]
http://goodjob.openam.net:8080 アクセス時に以下が出力される。
※Winstoneという軽量のServletコンテナが搭載されているため起動可能。
・Tomcatのインストール
[root@goodjob src]# wget http://ftp.riken.jp/net/apache/tomcat/tomcat-6/v6.0.35/bin/apache-tomcat-6.0.35.tar.gz
[root@goodjob src]# tar -xzf apache-tomcat-6.0.35.tar.gz
[root@goodjob src]# mv apache-tomcat-6.0.35 /opt/tomcat6
[root@goodjob src]# /usr/sbin/useradd -d /opt/tomcat6 -s /sbin/nologin tomcat
useradd: warning: the home directory already exists.
Not copying any file from skel directory into it.
[root@goodjob src]# chown -R tomcat /opt/tomcat6
[root@goodjob src]# cp /opt/tomcat6/bin/commons-daemon-native.tar.gz /tmp
[root@goodjob src]# cd /tmp
[root@goodjob tmp]# tar -xzf commons-daemon-native.tar.gz
[root@goodjob tmp]# cd commons-daemon-1.0.7-native-src/unix
[root@goodjob unix]# autoconf
[root@goodjob unix]# ./configure --with-java=/usr/java/jdk1.6.0_32
[root@goodjob unix]# make clean
[root@goodjob unix]# make
[root@goodjob unix]# chown tomcat jsvc
[root@goodjob unix]# mv jsvc /opt/tomcat6/bin
[root@goodjob unix]# cd /tmp
[root@goodjob tmp]# rm -rf commons-daemon*
[root@goodjob tmp]# vi /etc/init.d/tomcat6
---------------------------------------------------------------
#!/bin/sh
#
# chkconfig: - 80 20
# description: tomcat
# Source function library.
. /etc/init.d/functions
JAVA_HOME=/usr/java/jdk1.6.0_32
CATALINA_HOME=/opt/tomcat6
TOMCAT_USER=tomcat
TMP_DIR=/tmp
CATALINA_OPTS=
CLASSPATH=\
$JAVA_HOME/lib/tools.jar:\
$CATALINA_HOME/bin/commons-daemon.jar:\
$CATALINA_HOME/bin/bootstrap.jar
PIDFILE=/var/run/tomcat.pid
LOCKFILE=/var/lock/subsys/tomcat
DAEMON=$CATALINA_HOME/bin/jsvc
start(){
#
# Start Tomcat
#
echo -n "Starting tomcat: "
$DAEMON \
-pidfile $PIDFILE \
-user $TOMCAT_USER \
-home $JAVA_HOME \
-Djava.awt.headless=true \
-Xms1024m -Xmx2048m \
-Dcatalina.home=$CATALINA_HOME \
-Djava.io.tmpdir=$TMP_DIR \
-outfile $CATALINA_HOME/logs/catalina.out \
-errfile '&1' \
$CATALINA_OPTS \
-cp $CLASSPATH \
org.apache.catalina.startup.Bootstrap
#
# To get a verbose JVM
#-verbose \
# To get a debug of tomcat.
#-debug \
RETVAL=$?
if [ $RETVAL = 0 ]; then
echo_success
touch $LOCKFILE
else
echo_failure
fi
echo
}
stop(){
#
# Stop Tomcat
#
echo -n "Shutting down tomcat: "
$DAEMON \
-stop \
-pidfile $PIDFILE \
org.apache.catalina.startup.Bootstrap
RETVAL=$?
if [ $RETVAL = 0 ]; then
echo_success
rm -f $PIDFILE $LOCKFILE
else
echo_failure
fi
echo
}
case "$1" in
start)
start
;;
stop)
stop
;;
restart)
stop
start
;;
status)
status $DAEMON
RETVAL=$?
;;
*)
echo $"Usage: tomcat {start|stop|restart|status}"
exit 1
;;
esac
---------------------------------------------------------------
[root@goodjob tmp]# chmod +x /etc/init.d/tomcat6
[root@goodjob tmp]# /sbin/chkconfig tomcat6 on
[root@goodjob tmp]# /etc/init.d/tomcat6 start
Starting tomcat: [ OK ]
・TomcatへのJenkins配備
次にhttp://jenkins-ci.org/ よりLatest and greatest (1.462)をクリックして、jenkins.warをダウンロードする。
[root@goodjob tmp]# cd /opt/tomcat6/webapps
[root@goodjob webapps]# wget http://mirrors.jenkins-ci.org/war/latest/jenkins.war
[root@goodjob webapps]# chown -R tomcat jenkins.war
[root@goodjob webapps]# vi /opt/tomcat6/conf/server.xml
・変更前
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
・変更後
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" URIEncoding="UTF-8" />
[root@goodjob webapps]# /sbin/chkconfig jenkins off
[root@goodjob webapps]# /sbin/chkconfig --list jenkins
jenkins 0:off 1:off 2:off 3:off 4:off 5:off 6:off
[root@goodjob webapps]# /sbin/service jenkins stop
Shutting down Jenkins [ OK ]
[root@goodjob webapps]# /etc/init.d/tomcat6 stop
Shutting down tomcat: [ OK ]
[root@goodjob webapps]# /etc/init.d/tomcat6 start
Starting tomcat: [ OK ]
http://goodjob.openam.net:8080/ アクセス時に以下が出力される。
※Winstoneという軽量のServletコンテナは使わないため。
また、http://goodjob.openam.net:8080/jenkins/ アクセス時に以下が出力される。
0 件のコメント:
コメントを投稿