Skip to content

Instantly share code, notes, and snippets.

@srpouyet
Last active August 5, 2018 22:37
Show Gist options
  • Save srpouyet/3006274 to your computer and use it in GitHub Desktop.
Save srpouyet/3006274 to your computer and use it in GitHub Desktop.
Nginx Upstart script (Ubuntu 12.04)
### Nginx upstart script
### source: http://serverfault.com/a/391737/70451
### /etc/init/nginx.conf
description "nginx http daemon"
start on (filesystem and net-device-up IFACE=lo)
stop on runlevel [!2345]
env DAEMON=/usr/local/sbin/nginx
env PIDFILE=/var/run/nginx.pid
# Needed to allow Nginx to start, however, the wrong PID will be tracked
expect fork
# Test the nginx configuration (Upstart will not proceed if this fails)
pre-start exec $DAEMON -t
# Ensure nginx is shutdown gracefully
# Upstart will be tracking the wrong PID so the following is needed to stop nginx
post-stop exec $DAEMON -s stop
# Start Nginx
exec $DAEMON
@thinkinside-LQ
Copy link

Working for me without the post-stop line. CentOS 6.x
"pre-stop exec $DAEMON -s stop" is ok

@annejohnson
Copy link

This helped me troubleshoot the screwy nginx stops on my server. Ubuntu 12.04.4.
The line that worked for me was:
post-stop exec $DAEMON -s quit

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment