Files
pub-quiz/Dockerfile
Jay e705416ec4
All checks were successful
Build and Push Docker Image / build (push) Successful in 4s
bake data.csv into docker image
2026-03-31 16:55:44 +01:00

31 lines
854 B
Docker

FROM ghcr.io/astral-sh/uv:python3.13-bookworm-slim
WORKDIR /app
# 1. Copy dependency files first for layer caching
COPY pyproject.toml uv.lock ./
# 2. Install dependencies
RUN uv sync --frozen --no-dev
# 3. Explicitly copy data.csv first to ensure it exists
# (This will fail the build if the file is missing locally)
COPY data.csv ./data.csv
# 4. Copy the rest of the source code
COPY . .
# 5. Environment Setup
ENV PYTHONUNBUFFERED=1
# Points to the src folder so Python can find your modules
ENV PYTHONPATH=/app/src
# Points to the file we just baked into the root
ENV DATA_CSV_PATH=/app/data.csv
ENV UV_PROJECT_ENVIRONMENT=/app/.venv
ENV UV_LINK_MODE=copy
EXPOSE 8000
# 6. Run from the root, but point Gunicorn to the app inside src
CMD ["uv", "run", "gunicorn", "--workers", "2", "--bind", "0.0.0.0:8000", "--chdir", "/app/src", "app:app"]