# syntax=docker/dockerfile:1 FROM python:3.11-slim ENV PYTHONDONTWRITEBYTECODE=1 \ PYTHONUNBUFFERED=1 \ PATH="/app/.venv/bin:/root/.local/bin:${PATH}" WORKDIR /app RUN apt-get update && apt-get install -y --no-install-recommends \ build-essential \ curl \ ffmpeg \ && rm -rf /var/lib/apt/lists/* # Install uv RUN curl -LsSf https://astral.sh/uv/install.sh | sh # Install deps (expects uv.lock) COPY pyproject.toml uv.lock ./ RUN uv sync --frozen --no-dev # Copy source COPY cpv3 ./cpv3 COPY alembic ./alembic COPY alembic.ini ./ EXPOSE 8000 CMD ["sh", "-c", "uv run alembic upgrade head && uv run uvicorn cpv3.main:app --host 0.0.0.0 --port 8000"]