JiuwenSwarm 生产部署完整指南:Docker 快速上线、多实例隔离与可观测性监控实战

JiuwenSwarm 生产部署完整指南:Docker 快速上线、多实例隔离与可观测性监控实战 JiuwenSwarm 生产部署完整指南Docker 快速上线、多实例隔离与可观测性监控实战【免费下载链接】jiuwenswarmJiuwenSwarm is an intelligent AI Agent built on openJiuwen. It extends the powerful capabilities of large language models directly to your fingertips through various communication apps you use daily.项目地址: https://gitcode.com/gh_mirrors/ji/jiuwenswarmJiuwenSwarm 生产部署涉及三件核心事Docker 容器化上线、单机多实例隔离、可观测性监控。JiuwenSwarm 是基于 openJiuwen 构建的智能 AI Agent能把你日常使用的聊天应用变成大模型能力的入口。本文面向新手带你用最短路径把它跑上生产环境。一、JiuwenSwarm 生产部署全景3 种玩法怎么选场景方案适合人群单机快速上线Docker 镜像部署想零依赖、干净隔离环境的用户集群弹性扩容元戎openYuanrong一键部署有多台 Linux 主机、需要弹性伸缩的团队同机多租户/多环境单机多实例开发生产隔离、不同用户独立 Agent上线后持续观测OTel Langfuse 监控栈所有生产部署的标配部署完成后你可以在 Web 界面里管理智能体、技能与频道这是所有方案共用的操作入口。二、JiuwenSwarm Docker 部署两步构建生产镜像项目内置了 Dockerfile.claw生产镜像构建只需两步# 1. 构建镜像在项目根目录执行 docker build -f docker/Dockerfile.claw -t jiuwenswarm:prod . # 2. 启动容器配置目录映射到宿主机 docker run -d --name jiuwenswarm \ -v ~/.jiuwenswarm:/home/app/.jiuwenswarm \ -p 5173:5173 \ jiuwenswarm:prod镜像设计要点详见 Dockerfile.claw基于python:3.11.4-slim-bookworm精简底座体积更小、攻击面更小非 root 用户运行app用户满足容器安全基线前端在镜像构建期完成打包容器内只做服务启动启动更快入口命令为jiuwenswarm-start即项目自研的服务编排启动器会自动拉起 AgentServer、Gateway 等组件。 提示镜像内的环境变量FRONTEND_HOST0.0.0.0是为了让前端端口可以从容器外访问宿主机直跑场景仍默认 localhost。2.1 配置注入生产环境只改一个目录所有配置都集中在~/.jiuwenswarm/下容器只需挂载这一个目录~/.jiuwenswarm/ ├── config/config.yaml # 主配置模型、可观测性等 ├── workspace/ # Agent 人格、技能、记忆、会话 └── instances.yaml # 多实例注册表多实例场景配置字段说明可参考官方文档 配置信息。三、元戎分布式一键部署无需 K8s 的集群方案如果你有 16 核 / 32GB 以上的 Linux 主机amd64/arm64 均可项目提供了基于 openYuanrong Serverless 引擎的分布式一键部署方案——把 JiuwenSwarm 函数化部署无需 K8s 集群deploy.sh一条命令管多机。3.1 前置检查uname -s # 应为 Linux nproc # 建议 ≥ 16 核 free -g | grep Mem # 建议 ≥ 32G ssh-copy-id root目标主机IP # 部署机到目标主机免密登录3.2 一键部署 / 卸载 / 重启cd deploy/yuanrong cp .env.example .env.custom # 修改集群主机、模型密钥等参数 vim .env.custom ./deploy.sh up --hosts 192.168.1.1,192.168.1.2,192.168.1.3 # 多机部署 ./deploy.sh restart --hosts 192.168.1.1 # 重启 ./deploy.sh down gateway --hosts 192.168.1.1 # 仅卸载网关关键参数速查完整表见 deploy/yuanrong/README.md变量作用默认值MGR_MIN_INSTANCE/MGR_MAX_INSTANCE服务弹性伸缩的实例数上下限1 / 10MGR_CPU/MGR_MEMORY单实例 CPU毫核/ 内存Mi配额300 / 600GATEWAY_SESSION_MAP_SCOPE会话隔离粒度per_chat_bot或按用户per_chat_bot_userper_chat_bot_userJIUWENSWARM_INSTANCE_NAME指定实例名配置目录切换为~/.jiuwenswarm-instances/名默认路径⚠️ 部署顺序jiuwenswarm 先于 gateway 部署卸载时反过来。gateway 依赖 jiuwenswarm 注册后返回的FUNCTION_ID。四、单机多实例隔离一套机器跑出多个独立环境不想用多机又想开发/生产隔离、或给不同用户开独立 AgentJiuwenSwarm 的单机多实例功能让每个实例拥有完全独立的资源隔离维度说明工作区独立的workspace/SOUL.md、技能、记忆配置独立的.envAPI Key、模型可各不相同端口端口自动按基准端口 序号 × 1000分配防冲突进程独立进程组 PID 文件管理启动锁workspace/.instance.lock文件锁防止同实例被并发启动4.1 三步创建命名实例jiuwenswarm-init --name prod --workspace ~/.jiuwenswarm_prod # 创建实例并自动分端口 jiuwenswarm-start --name prod # 启动 jiuwenswarm-start --list # 查看所有实例状态与端口 jiuwenswarm-start --stop prod # 停止--list输出会一目了然地展示每个实例的运行状态、PID 和四类服务端口agent_server / web / gateway / frontend是生产巡检的第一道命令。4.2 生产多实例最佳实践端口规划先--list再开新实例系统会自动检测并报告端口冲突配置隔离dev 实例用测试 API Key 与小模型prod 实例用正式 Key 与旗舰模型互不干扰工作区即数据备份~/.jiuwenswarm_prod/就等于备份了该实例的全部 Agent 数据人格、记忆、会话。实例命名规则1-64 位仅字母、数字、下划线、连字符default、config等为保留名。五、可观测性监控实战一条命令接入 LangfuseJiuwenSwarm 为 Agent 与 Code 两种模式提供统一的OpenTelemetry 结构化 trace可观测性栈放在 deploy/observability/ 目录一条docker-compose拉起完整链路应用 --(OTLP gRPC :4317)-- OTel Collector --(OTLP HTTP 认证)-- Langfuse(:3000)5.1 三步开启监控第 1 步启动监控栈cd deploy/observability docker-compose up -d docker-compose ps # 全部 healthy 约需 30-60s栈内包含 6 个服务OTel Collector、Langfuse Web/Worker、Postgres、ClickHouse、Redis、MinIO编排文件见 docker-compose.yml。第 2 步在 JiuwenSwarm 中开启上报编辑~/.jiuwenswarm/config/config.yaml重启生效team_observability: enabled: true exporter: otlp_grpc # 推荐走本地 Collector认证统一在 Collector 侧 endpoint: http://localhost:4317 sample_rate: 1.0第 3 步查看 Trace浏览器打开http://localhost:3000用默认账号jiuwenswarmjiuwen.local登录即可看到每次对话 run 的完整 span 树模型调用耗时、工具执行链路、跨 run 聚合分析。5.2 离线两阶段模式不接网也能积累 trace生产环境不方便常开 Collector用fileexporter 让 trace 先落盘为每日traces-日期.jsonl之后再用脚本批量回放team_observability: enabled: true exporter: file file_retention_days: 7 # 过期文件自动清理无需手动维护python upload_traces_to_langfuse.py ./traces_run_001 # 逐行 POST 到 Collector5.3 生产上线检查清单 ✅项操作 密钥上线前必改 compose 文件里的NEXTAUTH_SECRET、SALT、ENCRYPTION_KEY与数据库密码 采样高流量场景把sample_rate降到0.1控制 trace 量️ 存储长期运行建议换托管 Postgres / ClickHouse替代 compose 数据卷 调试出口稳定后从 otel-collector-config.yaml 中移除debugexporter 回滚镜像打 tag 留档容器化部署回滚只需换 tag 重启 更细的排查方法为什么 Langfuse 里没有 trace之类见 调试追踪文档 与 deploy/observability/README.md。结语到这里你已经掌握了 JiuwenSwarm 生产部署的完整拼图Docker 镜像解决干净快速的上线元戎一键部署解决多机弹性伸缩多实例隔离解决同机多租户OTel Langfuse解决上线后的看得见。建议先用 Docker 单机跑通接入监控栈确认 trace 正常再按业务量平滑升级到分布式部署。祝部署顺利【免费下载链接】jiuwenswarmJiuwenSwarm is an intelligent AI Agent built on openJiuwen. It extends the powerful capabilities of large language models directly to your fingertips through various communication apps you use daily.项目地址: https://gitcode.com/gh_mirrors/ji/jiuwenswarm创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考