-
-
Save marcanuy/5ae0e0ef5976aa4a10a7 to your computer and use it in GitHub Desktop.
# Gunicorn Site systemd service file | |
[Unit] | |
Description=Gunicorn server for SITENAME-staging.example.com | |
After=network.target | |
After=syslog.target | |
Environment=sitedir=/Development/sites/SITENAME-staging.example.com | |
ExecStart=$(sitedir)/virtualenv/bin/gunicorn --chdir $(sitedir)/source workouts.wsgi:application --bind unix:/tmp/SITENAME-staging.example.com.socket | |
Restart=on-failure | |
RuntimeDirectory=gunicorn-stagingd | |
RuntimeDirectoryMode=755 | |
#sudo systemctl start gunicorn-SITENAME-staging.example.com.service |
The Restart=on-failure
option doesn't work for me. I added it, then reloaded the config via systemctl daemon-reload
, restarting my application and then killed its process, but it didn't restart on failure. Any idea?
@mkmoisen, if you did "kill -9 pid" it should restart, but if you did "killall gunicorn" will not restart because killall is sending a SIGTERM signal.
If set to on-failure, the service will be restarted when the process exits with a non-zero exit code, is terminated by a signal (including on core dump, but excluding the SIGHUP, SIGINT, SIGTERM or SIGPIPE signals). Because these four mentioned signals means clean exit.
New version described at https://simpleit.rocks/set-up-ubuntu-to-serve-a-django-website-step-by-step/.
Thank you. that --chdir saved me
Thank you so much. I just spent like 2 hours trying to figure this out. Hopefully it will work in Ubuntu 16.04...