revert: remove Chromium/Playwright deps from Dockerfile; add supervisorctl support
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.
This commit is contained in:
Kunthawat Greethong
2026-06-15 23:08:10 +07:00
parent 7e6f78e2fa
commit ee1157472c
2 changed files with 13 additions and 11 deletions

View File

@@ -39,19 +39,11 @@ WORKDIR /app
RUN apt-get update && apt-get install -y --no-install-recommends \
libpq5 postgresql-client curl tini supervisor nginx \
libnss3 libatk1.0-0 libatk-bridge2.0-0 libcups2 libdbus-1-3 \
libdrm2 libgbm1 libgtk-3-0 libnspr4 libxcomposite1 libxdamage1 \
libxfixes3 libxrandr2 libxshmfence1 libpango-1.0-0 libcairo2 \
libasound2 libatspi2.0-0 libx11-xcb1 fonts-liberation \
&& rm -rf /var/lib/apt/lists/* \
&& apt-get clean
# Copy Python deps and Playwright/Chromium browser from builder
# Copy Python deps from builder
COPY --from=builder /install /usr/local
COPY --from=builder /root/.cache/ms-playwright /root/.cache/ms-playwright
# Tell Playwright where to find Chromium (baked from builder)
ENV PLAYWRIGHT_BROWSERS_PATH=/root/.cache/ms-playwright
# Copy application code
COPY apps/api/src ./src

View File

@@ -4,6 +4,16 @@ 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
@@ -61,9 +71,9 @@ directory=/app
autostart=true
autorestart=true
startsecs=10
stdout_logfile=/dev/stdout
stdout_logfile=/var/log/scanner.log
stdout_logfile_maxbytes=0
stderr_logfile=/dev/stderr
stderr_logfile=/var/log/scanner.log
stderr_logfile_maxbytes=0
stopwaitsecs=10
killasgroup=true