29 lines
817 B
Docker
29 lines
817 B
Docker
# 使用 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"]
|