# 1. 使用官方的 Python 轻量级基础镜像
FROM python:3.11-slim

# 2. 设置容器内的工作目录
WORKDIR /app

# 3. 复制依赖文件到工作目录
COPY requirements.txt .

# 4. 安装依赖 (使用清华源可加速，不需要可去掉 -i 参数)
RUN pip install --no-cache-dir -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple

# 5. 复制当前目录下的所有代码到容器工作目录
COPY . .

# 6. 暴露 FastAPI 默认端口 (根据你的项目实际端口调整)
EXPOSE 8000

# 7. 启动命令。假设你的入口文件是 main.py，FastAPI 实例名为 app
# 注意：必须是 0.0.0.0，不能是 127.0.0.1，否则容器外无法访问
CMD ["uvicorn", "main:app", "--host", "0.0.0.0", "--port", "8000"]