FROM python:3.13-slim WORKDIR /app # Install uv COPY --from=ghcr.io/astral-sh/uv:latest /uv /usr/local/bin/uv # Copy dependency files first (for layer caching) COPY pyproject.toml uv.lock ./ # Install dependencies RUN uv sync --frozen --no-dev # Copy application code COPY *.py ./ # Expose port EXPOSE 8000 # Run the API server CMD ["uv", "run", "python", "api_server.py"]