[supervisord] logfile=/var/log/supervisord.log loglevel=debug directory=/opt/app pidfile=/tmp/supervisord.pid nodaemon=true minfds=65535 minprocs=200 environment=PATH="/opt/app" user=root [program:nginx] command=/usr/sbin/nginx "-g" "daemon off;" priority=1 autorestart=true stdout_events_enabled=true stderr_events_enabled=true [program:gunicorn] command=gunicorn src.dokumentor.wsgi:application -c /opt/app/conf/gunicorn_prod.py directory=/opt/app priority=2 stdout_logfile=/var/log/gunicorn.log redirect_stderr=true stdout_events_enabled=true stderr_events_enabled=true autorestart=true [program:celeryd] command=celery -A src.dokumentor worker -l info -E -B directory=/opt/app stdout_logfile=/var/log/celery-worker.log stderr_logfile=/var/log/celery-worker-error.log autostart=true autorestart=true startsecs=10 stopwaitsecs=600 [program:flower] command=celery -A src.dokumentor flower -l info -E -B --conf=/opt/app/conf/flower_conf.py directory=/opt/app stdout_logfile=/var/log/celery-flower.log stderr_logfile=/var/log/celery-flower-error.log autostart=true autorestart=true startsecs=10 stopwaitsecs=600 stdout_logfile=/dev/stdout stdout_logfile_maxbytes=0 redirect_stderr=true ; RQ requires the TERM signal to perform a warm shutdown. If RQ does not die ; within 10 seconds, supervisor will forcefully kill it stopsignal=TERM