FROM python:3.12-slim

WORKDIR /app

COPY pyproject.toml README.md LICENSE ./
COPY src ./src
RUN pip install --no-cache-dir .

ENV TRAWL_HOST=0.0.0.0 \
    TRAWL_PORT=7300

EXPOSE 7300

HEALTHCHECK --interval=30s --timeout=5s --start-period=10s \
    CMD python -c "import httpx; httpx.get('http://localhost:7300/health').raise_for_status()"

CMD ["trawl", "serve"]
