需按部署方式选择升级路径:一、Docker用户拉取新镜像后滚动更新;二、systemd用户下载新二进制并替换;三、Helm用户执行helm upgrade;四、统一通过/healthz接口、启动日志及配置API验证版本与状态。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

如果您正在运行 Hermes Agent 旧版本,且希望将其更新至最新稳定版以获得功能增强与安全修复,则需根据部署方式选择对应升级路径。以下是适用于不同安装场景的平滑升级操作步骤:
一、通过 Docker 部署的 Hermes Agent 升级
该方法适用于使用 docker run 或 docker-compose 启动 Hermes Agent 的用户。升级过程无需停机,可通过容器滚动更新或镜像替换实现服务连续性。
1、执行 docker pull hermesagent/hermes-agent:latest 拉取最新官方镜像。
2、停止当前运行容器,命令为 docker stop hermes-agent(容器名请按实际命名调整)。
3、删除旧容器,执行 docker rm hermes-agent。
4、使用新镜像重新运行,保留原有卷挂载与端口映射,例如:
docker run -d --name hermes-agent -p 8080:8080 -v /path/to/config:/app/config -v /path/to/data:/app/data hermesagent/hermes-agent:latest。
二、通过 systemd 管理的二进制部署升级
该方式适用于直接下载可执行文件并由 systemd 托管运行的 Hermes Agent 实例。升级需确保配置与数据目录不受影响,并维持服务状态无缝切换。
1、进入 Hermes Agent 安装目录,执行 wget -O hermes-agent-new https://github.com/hermesagent/hermes-agent/releases/download/v$(curl -s https://api.github.com/repos/hermesagent/hermes-agent/releases/latest | grep tag_name | cut -d '"' -f 4)/hermes-agent-linux-amd64 获取最新二进制文件。
2、赋予执行权限:chmod +x hermes-agent-new。
3、停止当前服务:sudo systemctl stop hermes-agent。
4、备份原二进制文件:mv hermes-agent hermes-agent-bak。
5、重命名新文件:mv hermes-agent-new hermes-agent。
6、重启服务:sudo systemctl start hermes-agent。
三、通过 Helm 部署在 Kubernetes 中的升级
该方式适用于使用 Helm Chart 在 K8s 集群中管理 Hermes Agent 的用户。升级依赖 Chart 版本同步与 values.yaml 配置兼容性校验。
1、更新本地 Helm 仓库索引:helm repo update。
2、查看可用版本:helm search repo hermesagent/hermes-agent --versions。
3、执行升级命令,指定目标版本(如 1.8.3):helm upgrade hermes-agent hermesagent/hermes-agent --version 1.8.3 -f values.yaml -n hermes-system。
4、确认 Pod 已滚动更新完成:kubectl get pods -n hermes-system -l app=hermes-agent,新 Pod 状态应为 Running 且旧 Pod 已终止。
四、验证升级结果
无论采用何种升级方式,均需验证新版本是否正确加载并正常提供服务。验证过程不依赖外部工具,仅通过内置接口与日志输出即可确认。
1、向 Hermes Agent 健康检查端点发起请求:curl http://localhost:8080/healthz,响应应为 {"status":"ok","version":"x.y.z"},其中 version 字段须匹配预期版本号。
2、查看启动日志末尾行:journalctl -u hermes-agent -n 20 --no-pager 或 kubectl logs -n hermes-system deploy/hermes-agent --tail=10,确认日志中出现 "Hermes Agent v[version] started" 字样。
3、检查配置热加载状态(如启用):curl http://localhost:8080/api/v1/config,返回的 JSON 中 "revision" 字段应为递增数值,表明配置已由新版本解析生效。


















