19 lines
449 B
Docker
19 lines
449 B
Docker
FROM python:3.12-slim
|
|
|
|
# Install uv by copying from the official image (avoids curl|sh pipe-swallow bug
|
|
# where a 5xx on astral.sh silently produces an exit-0 layer with no uv binary).
|
|
COPY --from=ghcr.io/astral-sh/uv:latest /uv /uvx /usr/local/bin/
|
|
|
|
ENV PYTHONPATH=/app/src
|
|
|
|
WORKDIR /app
|
|
|
|
COPY pyproject.toml uv.lock ./
|
|
COPY src/ ./src/
|
|
|
|
RUN uv sync
|
|
|
|
EXPOSE 8000
|
|
|
|
CMD ["uv", "run", "uvicorn", "src.main:app", "--host", "0.0.0.0", "--port", "8000"]
|