2013年9月22日日曜日

さくらのVPSでPlay Frameworkを動かす:Playをサービス化する

Play Frameworkの起動・停止をサービス化します。
によると、どうやら
target/start
で起動がされるようです。

起動するとRUNNING_PIDなるファイルが生成されるので、このファイルに記載されているプロセスをkillすれば停止できるようです。

vim /etc/init.d/play
#!/bin/bash 
# source function library
. /etc/rc.d/init.d/functions
# Path to the JVM
JAVA_HOME=/usr/java/default
export JAVA_HOME
export PATH=$PATH:$JAVA_HOME/bin
export PATH=$PATH:/usr/local/play
APPLICATION_PATH=アプリケーションのパス
RETVAL=0
SERVICE_NAME=`basename $0`
start() {
        echo -n $"Starting : $SERVICE_NAME"
        $APPLICATION_PATH/target/start &
        RETVAL=$?
        if [ $RETVAL == 0 ]; then
          success
        else
          failure
        fi
        echo
}
stop() {
        echo -n $"Stopping $SERVICE_NAME: "
        if [ -e $APPLICATION_PATH/RUNNING_PID ]; then
          kill `cat $APPLICATION_PATH/RUNNING_PID`
        fi
        RETVAL=$?
        if [ $RETVAL == 0 ]; then
          success
        else
          failure
        fi
        echo
}
restart() {
        stop
        start
}
case "$1" in
  start)
        start
        ;;
  stop)
        stop
        ;;
  restart)
        restart
        ;;
  status)
        status
        RETVAL=$?
        ;;
  *)
        echo $"Usage: $0 {start|stop|status|restart}"
        exit 1
esac
exit $RETVAL


Play Frameworkを自動起動に設定します。

chmod +x /etc/init.d/play
chkconfig --add /etc/init.d/play
chkconfig play on

参考


playの自動起動スクリプト
アプリケーションを本番モードで起動する

0 件のコメント:

コメントを投稿