【问题标题】:How to write upstart script for nginx service?如何为 nginx 服务编写新贵脚本?
【发布时间】:2016-12-04 01:43:52
【问题描述】:

在我的用例中,我正在尝试为 nginx 服务编写一个新贵脚本。这是我的内容,

#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 等。

有人可以帮我解决这个问题吗?我正在使用亚马逊 linux [ec2]。

【问题讨论】:

    标签: linux nginx service amazon-ec2 upstart


    【解决方案1】:

    service nginx start 命令是对 System V 初始化脚本的调用,该脚本管理 nginx 守护进程,就像 upstart 一样。您希望 upstart 像 init 脚本那样管理守护进程,而不是调用 init 脚本。你可以看到初始化脚本对cat /etc/init.d/nginx做了什么

    nginx 有个暴发户例子on their wiki.

    # nginx
    
    description "nginx http daemon"
    author "George Shammas <georgyo@gmail.com>"
    
    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
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-05-03
      • 2023-04-08
      • 1970-01-01
      • 1970-01-01
      • 2012-11-11
      • 2016-05-27
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多