2016-07-29 8 views
1

私のユースケースでは、nginxサービスの起動スクリプトを作成しようとしています。ここに私のコンテンツは、あるnginxサービス用のupstartスクリプトを書くには?

#nginx upstart script 
description "start and stop nginx server" 

start on (net-device-up 
and local-filesystems 
and runlevel [2345]) 

stop on runlevel [016] 

respawn 
respawn limit 5 30 

console output 

exec service nginx start 

しかし、我々は停止後pidなどを削除して起動する必要があるため、これは動作しません。

誰かが私にこれを手伝ってもらえますか?私はamazon linux [ec2]を使っています。

答えて

1

コマンドservice nginx startは、upstartのようにnginxデーモンを管理するSystem Vのinitスクリプトの呼び出しです。あなたはinitスクリプトを呼び出すのではなく、initスクリプトのようにデーモンを管理するためにupstartを使います。あなたはinitスクリプトが何をするのかを見ることができます。cat /etc/init.d/nginx

nginxのアップスタートの例はon their wikiです。

# nginx 

description "nginx http daemon" 
author "George Shammas <[email protected]>" 

start on (filesystem and net-device-up IFACE!=lo) 
stop on runlevel [!2345] 

env DAEMON=/usr/sbin/nginx 
env PID=/var/run/nginx.pid 

expect fork 
respawn 
respawn limit 10 5 
#oom never 

pre-start script 
     $DAEMON -t 
     if [ $? -ne 0 ] 
       then exit $? 
     fi 
end script 

exec $DAEMON 
関連する問題