Files

24 lines
632 B
Docker

FROM python:3.14-slim AS runtime
ENV PYTHONDONTWRITEBYTECODE=1 \
PYTHONUNBUFFERED=1 \
PYTHONPATH=/app/apps \
PLAYWRIGHT_BROWSERS_PATH=/ms-playwright \
PATH="/app/.venv/bin:${PATH}"
WORKDIR /app
RUN python -m pip install --no-cache-dir --upgrade pip uv
COPY pyproject.toml uv.lock README.md ./
COPY main.py ./main.py
COPY apps ./apps
RUN uv sync --frozen --no-dev --extra production \
&& playwright install --with-deps chromium \
&& mkdir -p /app/data /app/sessions /app/logs
EXPOSE 8000
CMD ["python", "main.py", "backend", "--host", "0.0.0.0", "--port", "8000", "--no-reload", "--log-level", "info"]