FROM ghcr.io/astral-sh/uv:python3.12-bookworm-slim WORKDIR /app ENV PYTHONDONTWRITEBYTECODE=1 \ PYTHONUNBUFFERED=1 \ UV_COMPILE_BYTECODE=1 \ UV_LINK_MODE=copy \ PATH="/app/.venv/bin:$PATH" COPY pyproject.toml uv.lock ./ RUN uv sync --frozen --no-dev --no-install-project COPY app ./app COPY main.py README.md ./ RUN uv sync --frozen --no-dev EXPOSE 8000 CMD ["uvicorn", "main:app", "--host", "0.0.0.0", "--port", "8000"]