Flaskとかで作ったちょっとしたサーバーの起動/停止用のシェルスクリプト。
gunicornでデーモン状態にしている。
startで起動、stopで終了、restartでstop+start。
#!/bin/sh PROGNAME=`basename $0` BASEDIR=`dirname $0` PIDFILE=$BASEDIR/$PROGNAME.pid start() { echo "Starting server..." cd $BASEDIR gunicorn flaskhello:app -p $PIDFILE -D } stop() { echo "Stopping server..." kill -TERM `cat $PIDFILE` rm -f $PIDFILE } usage() { echo "usage: $PROGNAME start|stop|restart" } if [ $# -lt 1 ]; then usage exit 255 fi case $1 in start) start ;; stop) stop ;; restart) stop start ;; esac
しばしば使う機会があるのでコピペ用。
動作するサンプルコードはbitbucketに置いた。
https://bitbucket.org/tokibito/sample_nullpobug/src/0213b46ec2b6/python/flaskhello