FROM ghcr.io/astral-sh/uv:python3.12-bookworm-slim

WORKDIR /app

ENV UV_COMPILE_BYTECODE=1
ENV UV_LINK_MODE=copy

COPY pyproject.toml uv.lock ./
RUN uv sync --frozen --no-install-project --no-dev

COPY README.md ./
COPY src/ src/
RUN uv sync --frozen --no-dev

EXPOSE 1319

ENTRYPOINT ["uv", "run", "mstransfer", "serve"]
