Files
ailine/docker/backend/Dockerfile

62 lines
2.0 KiB
Docker
Raw Normal View History

FROM python:3.11-slim
WORKDIR /app
2026-04-16 00:31:33 +08:00
# =============================================================================
# 非敏感环境变量(固化在镜像中,无需通过 .env 配置)
# =============================================================================
ENV PYTHONPATH=/app
# llama.cpp 服务配置(本地部署标准端口)
2026-04-17 01:26:05 +08:00
ENV VLLM_BASE_URL=http://host.docker.internal:18000/v1
ENV LLAMACPP_EMBEDDING_URL=http://host.docker.internal:18001/v1
2026-04-21 10:26:37 +08:00
ENV LLAMACPP_RERENT_URL=http://host.docker.internal:18002/v1
2026-04-16 00:31:33 +08:00
# Mem0 记忆层配置
ENV QDRANT_COLLECTION_NAME=mem0_user_memories
# 应用行为配置(可通过 .env 覆盖)
ENV MEMORY_SUMMARIZE_INTERVAL=10
ENV ENABLE_GRAPH_TRACE=false
2026-04-19 15:01:40 +08:00
# unstructured 库 spaCy 模型配置
ENV UNSTRUCTURED_LANGUAGE=eng
ENV SPACY_MODEL=en_core_web_sm
2026-04-16 00:31:33 +08:00
# 日志配置
ENV LOG_LEVEL=WARNING
ENV DEBUG=false
# =============================================================================
# 安装依赖
# =============================================================================
2026-04-21 00:00:56 +08:00
# 复制本地模型文件到镜像
2026-04-21 00:20:55 +08:00
COPY docker/models/*.whl /tmp/models/
2026-04-21 00:00:56 +08:00
# 安装
RUN pip install --no-cache-dir /tmp/models/*.whl && \
rm -rf /tmp/models
2026-04-20 23:11:07 +08:00
# 设置 pip 国内镜像源
RUN pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
# 复制 requirement 并安装(增加超时时间)
2026-04-21 10:26:37 +08:00
COPY backend/requirements.txt .
RUN pip install --no-cache-dir --default-timeout=300 -r requirements.txt
2026-04-19 15:01:40 +08:00
# =============================================================================
2026-04-21 10:26:37 +08:00
# 复制项目代码
2026-04-19 15:01:40 +08:00
# =============================================================================
2026-04-21 10:26:37 +08:00
COPY backend/ ./
2026-04-16 00:31:33 +08:00
# =============================================================================
# 暴露端口
# =============================================================================
2026-04-21 10:26:37 +08:00
EXPOSE 8079
2026-04-16 00:31:33 +08:00
# =============================================================================
# 启动命令
2026-04-16 00:31:33 +08:00
# =============================================================================
2026-04-21 10:26:37 +08:00
CMD ["python", "app/backend.py"]