# 使用官方 Python 精简镜像(体积小,适合生产) FROM python:3.11-slim # 设置环境变量,避免 Python 写入 .pyc 文件,以及确保 stdout/stderr 不被缓冲 ENV PYTHONDONTWRITEBYTECODE=1 \ PYTHONUNBUFFERED=1 \ PIP_NO_CACHE_DIR=1 \ PIP_DISABLE_PIP_VERSION_CHECK=1 # 设置工作目录 WORKDIR /app # 先复制依赖文件,利用 Docker 缓存加速构建 COPY requirements.txt . # 安装依赖 RUN pip install --no-cache-dir -r requirements.txt # 复制应用代码到容器中 COPY . . # 暴露应用端口(与 app.py 中一致) EXPOSE 8004 # 容器启动命令 CMD ["uvicorn", "app:app", "--host", "0.0.0.0", "--port", "8004"]