2026-01-27 15:50:23 +08:00
|
|
|
|
# 【修改】使用与你环境一致的 Python 3.8
|
|
|
|
|
|
FROM python:3.8
|
|
|
|
|
|
|
|
|
|
|
|
WORKDIR /app
|
|
|
|
|
|
|
|
|
|
|
|
# 1. 复制依赖并安装
|
|
|
|
|
|
COPY requirements.txt .
|
2026-09-02 18:39:09 +08:00
|
|
|
|
# 安装依赖 + gunicorn(清华镜像源 + BuildKit 缓存挂载)
|
|
|
|
|
|
# ★ 关键优化:pip 下载的 wheel 会缓存在宿主 /root/.cache/pip,
|
|
|
|
|
|
# 只要 requirements.txt 不变,重复构建不再重新下载(首次约100s,之后秒级)
|
|
|
|
|
|
RUN --mount=type=cache,target=/root/.cache/pip \
|
|
|
|
|
|
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple -r requirements.txt && \
|
|
|
|
|
|
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple gunicorn
|
2026-01-27 15:50:23 +08:00
|
|
|
|
|
|
|
|
|
|
# 2. 复制后端代码
|
|
|
|
|
|
COPY . .
|
|
|
|
|
|
|
|
|
|
|
|
# 3. 启动命令
|
|
|
|
|
|
# 假设你的入口文件是 run.py,实例叫 app
|
|
|
|
|
|
CMD ["gunicorn", "-w", "4", "-b", "0.0.0.0:8000", "run:app"]
|