feat(deploy): 容器化 + 一键独立部署 —— 5 服务镜像 + prod compose + 安装/备份/许可
此前应用服务只是本机裸二进制、无 Dockerfile、无法交付。本提交把项目从"只能在我笔记本 跑"变成"任何人一条命令起一整套",是「演示 / 拉投资 / 卖给客户独立部署」的可交付基础。 - Dockerfile ×5:gateway/dispatcher/mcp-go 多阶段(distroless static, 36–55MB); mcp-py(python-slim, 268MB);admin(node 构建→nginx 托管 SPA + 反代 /api,76MB)。 Go 构建上下文为仓库根以兜住 replace ../sundynix-shared;.dockerignore 瘦上下文。 - docker-compose.prod.yml:应用 + 基建一把起;经服务名互连(顺带避开 localhost DNS 坑); 基建端口不对宿主暴露;depends_on 健康检查保序(mcp-go 待 Milvus healthy); APP_ENV=production 强制密钥校验 + 锁 CORS + 管理员白名单。 - .env.example + DEPLOY.md:两类密钥分层(引导密钥走 .env,模型 key 控制台加密存库); 首次管理员流程;安全建议。LICENSE 专有(授权模型可后定)。 - scripts/backup.sh + restore.sh:PG 逻辑备份 + 各数据卷快照 / 恢复。 - .gitignore 挡 .env*(密钥不入库)。 live:5 镜像全构建通过;独立 project 起整套 → nginx→gateway→NATS→dispatcher→mcp 全链路 注册+提任务 running→done,depends_on 保序生效。 Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -24,6 +24,18 @@
|
||||
|
||||
## 快速开始
|
||||
|
||||
### 生产 / 独立部署 — 一条命令拉起整套(应用 + 基建)
|
||||
|
||||
```bash
|
||||
cp .env.example .env # 按提示填密钥(openssl rand -base64 32)
|
||||
docker compose -f docker-compose.prod.yml up -d --build
|
||||
# 控制台 http://<IP>:80 | 网关 http://<IP>:8080 | 链路 UI http://<IP>:16686
|
||||
```
|
||||
|
||||
应用全部容器化(gateway / dispatcher / mcp-go / mcp-py / admin-nginx),经服务名互连,
|
||||
基建端口不对外;模型 API key 部署后在控制台配(加密存库)。详见 **[DEPLOY.md](DEPLOY.md)**、
|
||||
备份恢复见 `scripts/backup.sh`。
|
||||
|
||||
### 无 Docker — 一键验证任务流(推荐先跑这个)
|
||||
|
||||
```bash
|
||||
|
||||
Reference in New Issue
Block a user