Some checks failed
CI / Detect changes (push) Has been cancelled
CI / API Lint (push) Has been cancelled
CI / API Tests (push) Has been cancelled
CI / Scanner Lint (push) Has been cancelled
CI / Scanner Tests (push) Has been cancelled
CI / Banner Lint & Typecheck (push) Has been cancelled
CI / Banner Tests (push) Has been cancelled
CI / Banner Build (push) Has been cancelled
CI / Admin UI Typecheck (push) Has been cancelled
CI / Admin UI Tests (push) Has been cancelled
CI / Admin UI Build (push) Has been cancelled
- Revert Dockerfile to before the Playwright system deps / Chromium copy
(commit 6e9726f). The ConnectError is a service-not-running issue, not
a missing-browser issue.
- Add [unix_http_server], [supervisorctl], and [rpcinterface:supervisor]
sections so 'supervisorctl status' works inside the container.
- Redirect scanner stdout/stderr to /var/log/scanner.log so startup
errors are inspectable.
81 lines
1.8 KiB
Plaintext
81 lines
1.8 KiB
Plaintext
[supervisord]
|
|
nodaemon=true
|
|
logfile=/var/log/supervisor/supervisord.log
|
|
pidfile=/var/run/supervisord.pid
|
|
user=root
|
|
|
|
[unix_http_server]
|
|
file=/var/run/supervisor.sock
|
|
chmod=0700
|
|
|
|
[supervisorctl]
|
|
serverurl=unix:///var/run/supervisor.sock
|
|
|
|
[rpcinterface:supervisor]
|
|
supervisor.rpcinterface_factory = supervisor.rpcinterface:make_main_rpcinterface
|
|
|
|
[program:nginx]
|
|
command=nginx -g "daemon off;" -c /etc/nginx/conf.d/default.conf
|
|
autostart=true
|
|
autorestart=true
|
|
stdout_logfile=/dev/stdout
|
|
stdout_logfile_maxbytes=0
|
|
stderr_logfile=/dev/stderr
|
|
stderr_logfile_maxbytes=0
|
|
stopwaitsecs=5
|
|
killasgroup=true
|
|
priority=100
|
|
|
|
[program:api]
|
|
command=sh -c "uvicorn src.main:app --host 127.0.0.1 --port 8000 --workers ${API_WORKERS:-4} --access-log --proxy-headers --forwarded-allow-ips '*'"
|
|
directory=/app
|
|
autostart=true
|
|
autorestart=true
|
|
stdout_logfile=/dev/stdout
|
|
stdout_logfile_maxbytes=0
|
|
stderr_logfile=/dev/stderr
|
|
stderr_logfile_maxbytes=0
|
|
stopwaitsecs=10
|
|
killasgroup=true
|
|
priority=200
|
|
|
|
[program:worker]
|
|
command=celery -A src.celery_app worker --loglevel=info --concurrency=2
|
|
directory=/app
|
|
autostart=true
|
|
autorestart=true
|
|
stdout_logfile=/dev/stdout
|
|
stdout_logfile_maxbytes=0
|
|
stderr_logfile=/dev/stderr
|
|
stderr_logfile_maxbytes=0
|
|
stopwaitsecs=30
|
|
killasgroup=true
|
|
priority=300
|
|
|
|
[program:beat]
|
|
command=celery -A src.celery_app beat --loglevel=info
|
|
directory=/app
|
|
autostart=true
|
|
autorestart=true
|
|
stdout_logfile=/dev/stdout
|
|
stdout_logfile_maxbytes=0
|
|
stderr_logfile=/dev/stderr
|
|
stderr_logfile_maxbytes=0
|
|
stopwaitsecs=10
|
|
killasgroup=true
|
|
priority=400
|
|
|
|
[program:scanner]
|
|
command=python -m src.worker
|
|
directory=/app
|
|
autostart=true
|
|
autorestart=true
|
|
startsecs=10
|
|
stdout_logfile=/var/log/scanner.log
|
|
stdout_logfile_maxbytes=0
|
|
stderr_logfile=/var/log/scanner.log
|
|
stderr_logfile_maxbytes=0
|
|
stopwaitsecs=10
|
|
killasgroup=true
|
|
priority=150
|