# 使用 Python 3.11 slim 镜像作为基础镜像 FROM python:3.11-slim # 设置工作目录 WORKDIR /app # 设置环境变量 ENV PYTHONUNBUFFERED=1 \ PYTHONDONTWRITEBYTECODE=1 \ TZ=Asia/Shanghai # 复制依赖文件 COPY requirements.txt . # 安装 Python 依赖 RUN pip install --no-cache-dir -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple # 复制应用代码(笔记目录在仓库中为 data/mengyanote,运行时挂载到 /app/mengyanote 与 main.py 一致) COPY main.py . COPY data/mengyanote ./mengyanote # 默认配置(config.json 含 admin_token;ignore.json)。部署可用卷覆盖整个目录 COPY data/config ./data/config # 暴露端口 EXPOSE 8000 # 启动命令 CMD ["uvicorn", "main:app", "--host", "0.0.0.0", "--port", "8000"]