Files

29 lines
894 B
Docker
Raw Permalink Normal View History

2026-06-24 13:11:34 +08:00
# ============================================================
# Flask 后端 Dockerfile
# 基于 Python 3.12 Alpine(精简镜像,约 50MB
# ============================================================
FROM python:3.12-alpine
# 设置工作目录
WORKDIR /app
# 先复制依赖文件(利用 Docker 缓存层,代码改动时不用重装依赖)
COPY requirements.txt .
# 安装 Python 依赖
# --no-cache-dir: 不缓存 pip 包,减小镜像体积
RUN pip install --no-cache-dir -r requirements.txt
# 复制应用代码
COPY . .
# 创建数据目录(SQLite 数据库文件存放位置)
RUN mkdir -p /app/data
# 暴露端口(Flask 默认 5000
EXPOSE 5000
# 启动命令:初始化数据库 + 启动 Flask
# waitress-serve 是生产级 WSGI 服务器,比 flask run 更稳定
CMD ["sh", "-c", "python seed_data.py && python -m flask run --host=0.0.0.0 --port=5000"]