Docker Compose 部署
ollmo 提供完整的 docker-compose 编排,一条命令启动全栈。
一键启动
cp .env.example .env
# 编辑 .env,至少修改 JWT_SECRET
make up-full
up-full 会构建并启动:基础设施(MySQL / Redis / MinIO / Milvus)+ API server + Asynq worker + Web。
环境变量
.env 关键配置:
SERVER_PORT=8080
CORS_ORIGINS=http://localhost:3001,http://localhost:3000
MYSQL_HOST=mysql
MYSQL_PORT=3306
MYSQL_USER=ollmo
MYSQL_PASSWORD=ollmo_dev_pwd
MYSQL_DATABASE=ollmo
REDIS_HOST=redis
REDIS_PORT=6379
MINIO_ENDPOINT=minio:9000
MINIO_ACCESS_KEY=minioadmin
MINIO_SECRET_KEY=minioadmin
MINIO_BUCKET=ollmo
MILVUS_HOST=milvus
MILVUS_PORT=19530
# 生产环境务必修改
JWT_SECRET=change_me_to_a_long_random_string_in_production
JWT_EXPIRE_HOURS=168
:::caution 生产环境
JWT_SECRET必须替换为长随机字符串- 修改 MySQL / MinIO 默认密码
CORS_ORIGINS改为实际域名 :::
配置优先级
| 来源 | 用途 |
|---|---|
server/config.yaml | 后端默认配置(DB、Redis、MinIO、Milvus、MinerU、JWT) |
.env | Docker 部署的环境变量覆盖 |
| Web UI → 设置 | 租户级 LLM / Embedding / Rerank 供应商 |
| Web UI → 知识库设置 | 知识库级 Rerank 覆盖 |
| Web UI → Agent 画布 | 知识库级 Agent 配置 |
模型选择优先级:知识库级配置 → 租户默认 → config.yaml 兜底。
健康检查
# 存活探针:进程存活即返回
curl http://localhost:8080/health
# 就绪探针:逐项检查 MySQL / Redis / MinIO / Milvus 连通性,任一不可用返回 503
curl http://localhost:8080/ready
Docker / K8s 就绪检查建议使用 /ready,确保流量只在依赖就绪后进入。