cursor / Dockerfile
aixo's picture
u
87a641e verified
raw
history blame contribute delete
607 Bytes
FROM ghcr.io/astral-sh/uv:python3.12-alpine
# 安装 Node(如果确实需要)
RUN apk add --no-cache nodejs npm
WORKDIR /app
# 仅复制依赖清单,利用缓存
COPY pyproject.toml uv.lock* ./
# 安装依赖(--frozen 在有 uv.lock 时更稳)
RUN --mount=type=cache,target=/root/.cache/uv uv sync --frozen --no-dev
# 再复制源码
COPY . .
# HF Spaces 会注入 $PORT(默认7860),你的服务必须监听它
ENV PORT=7860
EXPOSE 7860
# 如果是 FastAPI:将 main.py 改为绑定 0.0.0.0:$PORT(见下)
CMD ["sh", "-c", "uv run uvicorn main:app --host 0.0.0.0 --port ${PORT}"]