FROM ghcr.io/astral-sh/uv:python3.12-bookworm-slim WORKDIR /app ENV UV_COMPILE_BYTECODE=1 UV_LINK_MODE=copy ENV PATH="/app/.venv/bin:$PATH" COPY pyproject.toml uv.lock ./ RUN --mount=type=cache,target=/root/.cache/uv \ uv sync --frozen --no-install-project COPY src/ src/ COPY tests/ tests/ COPY alembic/ alembic/ COPY alembic.ini . COPY README.md . RUN --mount=type=cache,target=/root/.cache/uv \ uv sync --frozen CMD ["pytest"]