FROM python:3.12-slim WORKDIR /app # uv 管理依赖(国内构建加 --index-url 镜像) COPY --from=ghcr.io/astral-sh/uv:latest /uv /usr/local/bin/uv COPY pyproject.toml uv.lock* ./ RUN uv sync --no-dev --no-cache COPY src ./src COPY alembic ./alembic COPY alembic.ini ./ EXPOSE 8000 CMD ["uv", "run", "--no-sync", "uvicorn", "src.main:app", "--host", "0.0.0.0", "--port", "8000"]