fix(tradein): camoufox fetch under app-user so runtime finds Firefox (#884) #899

Merged
lekss361 merged 1 commit from fix/884-camoufox-cache-path into main 2026-05-31 13:46:08 +00:00

View file

@ -56,13 +56,18 @@ COPY --from=builder --chown=app:app /app/.venv /app/.venv
COPY --from=builder --chown=app:app /app/app /app/app
COPY --from=builder --chown=app:app /app/scripts /app/scripts
# Загружаем Firefox-сборку для camoufox (#884).
# Слой кешируется: пересобирается только при изменении .venv (обновление camoufox).
# ~960MB. CI/devops-verify required — не запускать локально без намерения скачать.
RUN python -m camoufox fetch
USER app
# HOME должен быть явным: Docker НЕ выставляет $HOME по USER, а camoufox/platformdirs
# резолвит кэш Firefox как $HOME/.cache/camoufox. Без этого fetch (под root) клал браузер
# в /root/.cache, а рантайм-app искал в /home/app/.cache → "browser not found" в browser-mode.
# (подтверждено сборкой+прогоном образа на деплой-хосте 2026-05-31, баг из #884.)
ENV HOME=/home/app
# Загружаем Firefox-сборку для camoufox (#884) — ПОД app-юзером, чтобы кэш совпал с рантаймом.
# Слой кешируется: пересобирается только при изменении .venv (обновление camoufox). ~960MB.
RUN python -m camoufox fetch
EXPOSE 8000
CMD ["uvicorn", "app.main:app", "--host", "0.0.0.0", "--port", "8000", "--reload"]