# 基础镜像：使用 Python 3.9 轻量版本（slim 减少镜像体积，适合生产/测试环境）
FROM python:3.9-slim

# 设置工作目录（容器内的目录，统一管理项目文件）
WORKDIR /app

# 复制项目依赖文件到工作目录（先复制 requirements.txt 可利用 Docker 缓存，后续修改代码无需重新安装依赖）
COPY requirements.txt .

# 安装依赖（--no-cache-dir 避免缓存依赖包，减少镜像体积）
RUN pip install --no-cache-dir -r requirements.txt -i https://mirrors.aliyun.com/pypi/simple/

# 复制整个项目代码到工作目录（包括 main.py 等所有文件）
COPY . .

# 暴露容器端口（对应 main.py 中配置的 5500 端口，仅声明，不实际映射）
EXPOSE 5500

# 容器启动命令（启动 Python 脚本，注意：flask 直接运行仅适合测试，生产环境可改用 gunicorn，下文有说明）
CMD ["python", "main.py"]