100 lines
4.4 KiB
YAML
100 lines
4.4 KiB
YAML
services:
|
||
backend:
|
||
build:
|
||
context: .. # 构建上下文为项目根目录
|
||
dockerfile: docker/backend/Dockerfile
|
||
container_name: ai-backend
|
||
environment:
|
||
# =========================================================================
|
||
# ⭐ 敏感密钥配置 - 必须配置(本地:.env 文件 | CI/CD:Secrets)
|
||
# =========================================================================
|
||
- ZHIPUAI_API_KEY=${ZHIPUAI_API_KEY:?请配置 ZHIPUAI_API_KEY(本地:.env 文件 | CI/CD:Secrets)} # ⭐ 敏感密钥配置
|
||
- DEEPSEEK_API_KEY=${DEEPSEEK_API_KEY:?请配置 DEEPSEEK_API_KEY(本地:.env 文件 | CI/CD:Secrets)} # ⭐ 敏感密钥配置
|
||
- LLAMACPP_API_KEY=${LLAMACPP_API_KEY:?请配置 LLAMACPP_API_KEY(本地:.env 文件 | CI/CD:Secrets)} # ⭐ 敏感密钥配置
|
||
|
||
# =========================================================================
|
||
# PostgreSQL 数据库配置
|
||
# =========================================================================
|
||
- DB_HOST=115.190.121.151
|
||
- DB_PORT=5432
|
||
- DB_USER=postgres
|
||
- DB_PASSWORD=${DB_PASSWORD:?请配置 DB_PASSWORD(本地:.env 文件 | CI/CD:Secrets)} # ⭐ 敏感密钥配置
|
||
- DB_NAME=langgraph_db
|
||
|
||
# =========================================================================
|
||
# Qdrant 向量数据库配置(URL + API密钥 配对)
|
||
# =========================================================================
|
||
- QDRANT_URL=http://115.190.121.151:6333
|
||
- QDRANT_API_KEY=${QDRANT_API_KEY:?请配置 QDRANT_API_KEY(本地:.env 文件 | CI/CD:Secrets)} # ⭐ 敏感密钥配置
|
||
- QDRANT_COLLECTION_NAME=mem0_user_memories
|
||
|
||
# =========================================================================
|
||
# llama.cpp 服务配置(URL + API密钥 配对)
|
||
# =========================================================================
|
||
# 主 LLM 服务 (Gemma-4-E2B GGUF) - Docker host 端口 18000
|
||
- VLLM_BASE_URL=http://host.docker.internal:18000/v1
|
||
# Embedding 服务 (Qwen3-Embedding-0.6B GGUF) - Docker host 端口 18001
|
||
- LLAMACPP_EMBEDDING_URL=http://host.docker.internal:18001/v1
|
||
# Reranker 服务 (bge-reranker-v2-m3) - Docker host 端口 18002
|
||
- LLAMACPP_RERANKER_URL=http://host.docker.internal:18002/v1
|
||
|
||
# =========================================================================
|
||
# RAG 索引构建配置(非敏感)
|
||
# =========================================================================
|
||
- RAG_COLLECTION_NAME=rag_documents
|
||
- RAG_CHUNK_SIZE=500
|
||
- RAG_CHUNK_OVERLAP=50
|
||
- RAG_PARENT_CHUNK_SIZE=1000
|
||
- RAG_CHILD_CHUNK_SIZE=200
|
||
- RAG_PARENT_CHUNK_OVERLAP=100
|
||
- RAG_CHILD_CHUNK_OVERLAP=20
|
||
- RAG_STRATEGY=parent-child
|
||
- RAG_STORAGE_TYPE=postgres
|
||
|
||
# =========================================================================
|
||
# 日志调试配置(可通过 .env 覆盖)
|
||
# =========================================================================
|
||
- LOG_LEVEL=${LOG_LEVEL:-WARNING}
|
||
- DEBUG=${DEBUG:-false}
|
||
- ENABLE_GRAPH_TRACE=${ENABLE_GRAPH_TRACE:-false}
|
||
|
||
# =========================================================================
|
||
# 应用行为配置
|
||
# =========================================================================
|
||
- MEMORY_SUMMARIZE_INTERVAL=${MEMORY_SUMMARIZE_INTERVAL:-10}
|
||
|
||
# =========================================================================
|
||
# 前端通信地址(Docker 内部网络)
|
||
# =========================================================================
|
||
- API_URL=http://backend:8079/chat
|
||
|
||
volumes:
|
||
- ../data/user_docs:/app/data/user_docs # 挂载文档目录
|
||
- ../logs:/app/logs
|
||
networks:
|
||
- ai-network
|
||
# ⭐ 移除对 postgres 和 qdrant 的依赖(使用远程服务)
|
||
restart: unless-stopped
|
||
ports:
|
||
- "8079:8079"
|
||
|
||
frontend:
|
||
build:
|
||
context: ..
|
||
dockerfile: docker/frontend/Dockerfile
|
||
container_name: ai-frontend
|
||
environment:
|
||
# Docker 内部网络使用服务名 'backend' 解析后端服务
|
||
- API_URL=http://backend:8079/chat
|
||
ports:
|
||
- "8501:8501"
|
||
networks:
|
||
- ai-network
|
||
depends_on:
|
||
- backend
|
||
restart: unless-stopped
|
||
|
||
networks:
|
||
ai-network:
|
||
driver: bridge
|