FROM ghcr.io/astral-sh/uv:python3.12-bookworm-slim AS builder ENV UV_COMPILE_BYTECODE=1 UV_LINK_MODE=copy WORKDIR /app # Copy dependency files and install COPY pyproject.toml uv.lock ./ RUN uv sync --frozen --no-dev --no-install-project # Copy project files COPY . . RUN uv sync --frozen --no-dev FROM python:3.12-slim-bookworm WORKDIR /app # Copy the environment from the builder COPY --from=builder /app /app # Set up environment variables ENV PATH="/app/.venv/bin:$PATH" ENV PORT=8000 # Expose the port EXPOSE 8000 # Run the server CMD ["python", "server.py"]