2012年7月25日水曜日

Tomcat7 on ScientificLinux6

背景


最近、Rubyの勉強を行なっている。で、Rubyと言えばRailsと思い立った。

実は、CRubyではなくJRubyでコードを書いている。そのため、RailsもTomcatなどのJavaアプリケーション・サーバーで走らせることになる。

動かすだけが目的であるならば、GoogleAppEngineだって、JRrubyやRailsが動くのでそれでも良い。

しかし、先日さくらのVPSのりようを開始したりで手元に環境が揃っているため、自前でアプリケーション・サーバーを用意することにした。

動作させるOSはScientificLinux6。ちなみに、すでにJenkinsが動作しているサーバーであるため、ポートが重なったりしないよう気をつけなければならない。


手順


  • JDKのインストール
  • tomcatのインストール
  • tomcatの設定
  • apacheの設定


JDKのインストール


大事なのは、インストール作業よりも環境変数の登録。


# vim ~/.bashrc
export JAVA_HOME=/usr/java/default
export PATH="$PATH":$JAVA_HOME/bin
export CLASSPATH=.:$JAVA_HOME/jre/lib:$JAVA_HOME/lib:$JAVA_HOME/lib/tools.jar


#source .bashrc

tomcatのインストール


#wget http://ftp.meisei-u.ac.jp/mirror/apache/dist/tomcat/tomcat-7/v7.0.29/bin/apache-tomcat-7.0.29.tar.gz
#tar xzf apache-tomcat-7.0.29.tar.gz
#mv apache-tomcat-7.0.29 /usr/local/tomcat
#rm -rf apache-tomcat-7.0.29.tar.gz

tomcatの設定

#vim /etc/profile.d/tomcat.sh
export JAVA_HOME=/usr/java/default
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=.:$JAVA_HOME/jre/lib:$JAVA_HOME/lib:$JAVA_HOME/lib/tools.jar
export TOMCAT_HOME=/usr/local/tomcat
export CATALINA_HOME=/usr/local/tomcat
export CLASSPATH=$CLASSPATH:/$CATALINA_HOME/common/lib

起動スクリプトの記述

#vim /etc/rc.d/init.d/tomcat

#!/bin/bash

# Tomcat7: Start/Stop Tomcat 7
#
# chkconfig: - 90 10
# description: Tomcat is a Java application Server.

. /etc/init.d/functions
. /etc/sysconfig/network
source /etc/profile.d/tomcat.sh

TOMCAT_USER=tomcat
LOCKFILE=/var/lock/subsys/tomcat

RETVAL=0
start(){
        echo "Starting Tomcat7: "
        su - $TOMCAT_USER -c "$CATALINA_HOME/bin/startup.sh"
        RETVAL=$?
        echo
        [ $RETVAL -eq 0 ] && touch $LOCKFILE
        return $RETVAL
}

stop(){
        echo "Shutting down Tomcat7: "
        $CATALINA_HOME/bin/shutdown.sh
        RETVAL=$?
        echo
        [ $RETVAL -eq 0 ] && rm -f $LOCKFILE
        return $RETVAL
}

case "$1" in
        start)
        start
        ;;
        stop)
        stop
        ;;
        restart)
        stop
        start
        ;;
        status)
        status tomcat
        ;;
        *)
        echo $"Usage: $0 {start|stop|restart|status}"
        exit 1
        ;;
esac
exit $?

apacheの設定


ポートの変更

#vim /usr/local/tomcat/conf/server.xml
#http://server:8080 でのアクセスを禁止する
#コメントアウト
      
#AJPのポートを変更する

#8009 -> 8020 に変更

AJPの設定

#vim /etc/httpd/conf.d/prozy_ajp.conf
ProxyPass /tomcat/ ajp://localhost:8020/
デーモンの起動

#/etc/rc.d/init.d/httpd restart
#/etc/rc.d/init.d/tomcat start

サービスの登録

#chkconfig --add tomcat
#chkconfig tomcat on
というわけで、次はRails

0 件のコメント:

コメントを投稿