# Use Python 3.14 as requested (using rc-slim as 3.14 is likely in pre-release) # If 3.14-slim-bookworm is not available, this might need adjustment to python:3.14-rc-slim or similar. FROM python:3.14-rc-slim-bookworm # Install uv COPY --from=ghcr.io/astral-sh/uv:latest /uv /bin/uv # Set working directory WORKDIR /app # Copy dependency files COPY pyproject.toml uv.lock ./ # Sync dependencies (frozen to ensure reproducibility) RUN uv sync --frozen # Copy source code COPY src/ src/ COPY entrypoint.sh . # Make entrypoint executable RUN chmod +x entrypoint.sh # Expose port 8000 for SSE mode EXPOSE 8000 # Set entrypoint ENTRYPOINT ["/app/entrypoint.sh"]