FROM ghcr.io/astral-sh/uv:python3.13-bookworm-slim

WORKDIR /app

COPY pyproject.toml uv.lock ./

RUN uv sync --frozen --no-dev

COPY data.csv ./data.csv

COPY . .

ENV PYTHONUNBUFFERED=1
ENV PYTHONPATH=/app/src
ENV DATA_CSV_PATH=/app/data.csv
ENV UV_PROJECT_ENVIRONMENT=/app/.venv
ENV UV_LINK_MODE=copy

EXPOSE 8000

CMD ["uv", "run", "gunicorn", "--workers", "2", "--bind", "0.0.0.0:8000", "--chdir", "/app/src", "app:app"]
