FROM python:3.12-alpine

ENV PYTHONDONTWRITEBYTECODE=1 \
    PYTHONUNBUFFERED=1

WORKDIR /app

RUN pip install --no-cache-dir \
    fastapi \
    uvicorn \
    httpx \
    pyyaml

COPY main.py worker.py db.py config.py ./
COPY routes/ routes/
COPY static/ static/

RUN mkdir -p /app/data /app/outputs

EXPOSE 8000

CMD ["python", "main.py"]