Skip to content
This repository was archived by the owner on Oct 30, 2026. It is now read-only.
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 7 additions & 2 deletions server/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
FROM ghcr.io/astral-sh/uv:0.13.1-python3.15-trixie-slim AS base
FROM ghcr.io/astral-sh/uv:0.13.1-python3.15-trixie-slim AS runtime
# We set this pretend version as we do not have Git in our path, and we do
# not care enough about having the version correct inside the Docker container
# to install it.
Expand All @@ -18,12 +18,17 @@ ENV UV_PROJECT_ENVIRONMENT=/app/docker_venvs/.venv
ENV PATH="$UV_PROJECT_ENVIRONMENT/bin:$PATH"

WORKDIR /app

FROM runtime AS builder
# Install the locked dependencies before copying the source, so that
# source edits do not invalidate the dependency layer.
COPY --chown=10001:10001 pyproject.toml uv.lock /app/
RUN uv sync --frozen --no-cache --no-dev --extra server --no-install-workspace
COPY --chown=10001:10001 . /app
RUN uv sync --locked --no-cache --no-dev --extra server
RUN uv sync --locked --no-cache --no-dev --extra server --no-editable

FROM runtime AS base
COPY --from=builder --chown=10001:10001 /app/docker_venvs/.venv /app/docker_venvs/.venv
EXPOSE 5000
ENTRYPOINT ["python"]
HEALTHCHECK --interval=1s --timeout=10s --start-period=5s --retries=3 CMD ["python", "-m", "vws_mock_server.healthcheck"]
Expand Down
Loading