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:
Blizzard
2026-06-26 15:23:36 +08:00
parent 165ecb4ec6
commit a5fd251fc0
17 changed files with 545 additions and 0 deletions
+20
View File
@@ -0,0 +1,20 @@
专有软件许可 / Proprietary License
Copyright (c) 2026 sundynix-agentix. 保留所有权利 / All Rights Reserved.
本软件及其源代码、文档、构建产物(统称“本软件”)为版权所有者的专有财产。
未经版权所有者事先书面授权,任何个人或实体不得复制、修改、合并、发布、分发、
再许可、出售本软件,或将其用于商业或生产用途。
获授权方(如签署商业许可/独立部署协议者)的使用范围、期限与限制,以双方另行
签署的书面协议为准;本文件不授予任何此类协议之外的权利。
本软件按“现状”提供,不附任何明示或默示担保,包括但不限于适销性、特定用途
适用性与不侵权的担保。版权所有者不对任何索赔、损害或其他责任负责。
---
This software is proprietary. No rights are granted except under a separate
written commercial/deployment agreement with the copyright holder.
注:授权模型(专有 / 源码可见 BSL / 双授权等)为商业决策,可按需替换本文件。