Files
Yamtrack/supervisord.conf
Timothy Stott 9d9f03001e Add IPv6 support
This change remains backward compatible, as IPv6 support is disabled by default.

Nginx fails to start when an IPv6 `listen` directive is specified on an
IPv4-only host, preventing a single configuration from supporting both
protocols. To work around this limitation, the Docker image build
process now generates a separate copy of the Nginx configuration for IPv6.

An environment variable can be used to select either the IPv4 or IPv6
configuration when launching the container.

By embedding both configurations during the image build, we avoid making
file system changes at runtime — a step toward an immutable filesystem design.
2026-01-08 23:45:44 +00:00

42 lines
1.2 KiB
Plaintext

[supervisord]
nodaemon=true
user=root
[program:nginx]
command=sh -c 'if [ "${YAMTRACK_IPV6_ENABLED:-False}" = "True" ]; then CONF=/etc/nginx/nginx.ipv6.conf; else CONF=/etc/nginx/nginx.conf; fi; nginx -c $CONF -g "daemon off;"'
user=root
priority=1
stdout_logfile=/dev/stdout
stdout_logfile_maxbytes=0
stderr_logfile=/dev/stderr
stderr_logfile_maxbytes=0
[program:gunicorn]
command=gunicorn --config python:config.gunicorn config.wsgi:application
user=abc
priority=5
stdout_logfile=/dev/stdout
stdout_logfile_maxbytes=0
stderr_logfile=/dev/stdout
stderr_logfile_maxbytes=0
[program:celery]
command=sh -c 'if [ "${ENV_DEBUG:-False}" = "True" ]; then LOGLEVEL=DEBUG; else LOGLEVEL=INFO; fi; celery --app config worker --loglevel $LOGLEVEL --without-mingle --without-gossip'
user=abc
stopasgroup=true
stopwaitsecs=60
priority=10
stdout_logfile=/dev/stdout
stdout_logfile_maxbytes=0
stderr_logfile=/dev/stdout
stderr_logfile_maxbytes=0
[program:celery-beat]
command=sh -c 'if [ "${ENV_DEBUG:-False}" = "True" ]; then LOGLEVEL=DEBUG; else LOGLEVEL=INFO; fi; celery --app config beat --loglevel $LOGLEVEL'
user=abc
stopasgroup=true
priority=15
stdout_logfile=/dev/stdout
stdout_logfile_maxbytes=0
stderr_logfile=/dev/stdout
stderr_logfile_maxbytes=0