离线部署HermesAgent教程详解
时间:2026-04-14 13:48:42 242浏览 收藏
本文详细介绍了如何在无网络连接的服务器或内网环境中离线部署 Hermes Agent,直击企业级安全场景下的核心痛点——官方在线安装脚本因依赖 GitHub 克隆、PyPI 下载及远程 Python 环境获取而完全失效。教程以三步极简逻辑展开:先在外网机全自动打包 install.sh、完整源码、预编译 wheel 包和定制化 Python 3.11 环境;再在离线机巧妙复用官方脚本初始化目录结构并中断网络步骤;最后注入离线资源、配置最小可行 config.yaml 并一键启动,全程无需任何外网交互,真正实现“拷贝即部署”,为金融、政务、军工等强隔离环境提供了开箱即用、可审计、可复现的可靠落地方案。

如果您需要在无外网连接的服务器或内网环境中部署 Hermes Agent,则无法直接执行官方在线安装脚本,因其依赖 GitHub 源码克隆、PyPI 包下载及 uv/Python 3.11 的远程获取。以下是解决此问题的步骤:
一、准备离线安装包
该方法通过预先在外网环境打包全部依赖与源码,再将完整资源迁移至目标离线机器,避免任何实时网络请求。需在一台可联网的同架构 Linux 主机(如 x86_64)上完成前置打包。
1、创建临时工作目录并进入:
mkdir -p ~/hermes-offline && cd ~/hermes-offline
2、下载官方安装脚本并保存为 install.sh:
curl -fsSL https://raw.githubusercontent.com/NousResearch/hermes-agent/main/scripts/install.sh -o install.sh
3、手动克隆 Hermes-Agent 源码仓库(含子模块):
git clone --recursive https://github.com/NousResearch/hermes-agent.git hermes-agent-main
4、压缩源码目录:
zip -r hermes-agent-main.zip hermes-agent-main
5、使用 uv 创建离线 Python 环境快照(需已安装 uv):
uv venv venv-offline --python 3.11
source venv-offline/bin/activate
uv pip install --no-deps --only-binary=all -r hermes-agent-main/requirements.txt
uv pip wheel --no-deps --wheel-dir ./wheels --find-links ./wheels --no-index -r requirements.txt
6、将 install.sh、hermes-agent-main.zip、wheels/ 目录、venv-offline/ 中的 python 可执行文件及 site-packages 内容一并打包:
tar -czf hermes-offline-bundle.tgz install.sh hermes-agent-main.zip wheels/ venv-offline/bin/python venv-offline/lib/python3.11/site-packages/
二、在离线机器上执行环境初始化
该步骤复用官方 install.sh 的逻辑判断与路径配置能力,但跳过所有网络操作,仅完成目录结构创建、权限设置与基础符号链接生成。
1、将 hermes-offline-bundle.tgz 上传至离线机器的用户主目录(如 /root 或 /home/user)
2、解压离线包:
tar -xzf hermes-offline-bundle.tgz
3、赋予 install.sh 执行权限:
chmod +x install.sh
4、执行 install.sh 并强制中断其网络阶段(当输出出现 “Cloning Hermes-Agent…” 或 “Downloading uv…” 提示时立即 Ctrl+C):
./install.sh
5、确认 ~/.local/bin/、~/.hermes/、~/.cache/hermes/ 等目录已被创建,且 ~/.hermes/venv 存在(即使为空)
三、注入离线源码与依赖
该步骤将预打包的源码和 wheel 包注入到 install.sh 初始化后的指定路径,使后续运行能完全脱离网络。
1、解压 hermes-agent-main.zip 到 ~/.hermes/ 目录下:
unzip hermes-agent-main.zip -d ~/.hermes/
2、重命名解压出的目录为 hermes-agent:
mv ~/.hermes/hermes-agent-main ~/.hermes/hermes-agent
3、激活离线 Python 环境并安装本地 wheel:
~/.hermes/venv/bin/python -m pip install --find-links ./wheels --no-index --upgrade --force-reinstall ./wheels/*.whl
4、验证依赖完整性:
~/.hermes/venv/bin/python -c "import uv, requests, pydantic; print('OK')"
四、配置模型与启动服务
该步骤绕过交互式向导中所有网络校验环节,直接写入最小可行配置,确保 agent 可启动并响应基础指令。
1、创建配置目录:
mkdir -p ~/.hermes/config
2、手动创建 config.yaml 文件:
cat > ~/.hermes/config.yaml model:
provider: custom
base_url: http://localhost:8000/v1
api_key: sk-offline-dummy
default: qwen-turbo
EOF
3、启动 Hermes Agent(不启用 gateway,仅 CLI 模式):
~/.local/bin/hermes run --no-gateway
4、在新终端中测试基础功能:
echo "hello" | ~/.local/bin/hermes chat
以上就是《离线部署HermesAgent教程详解》的详细内容,更多关于的资料请关注golang学习网公众号!
-
501 收藏
-
501 收藏
-
501 收藏
-
501 收藏
-
501 收藏
-
185 收藏
-
142 收藏
-
395 收藏
-
416 收藏
-
165 收藏
-
209 收藏
-
259 收藏
-
424 收藏
-
293 收藏
-
403 收藏
-
108 收藏
-
329 收藏
-
- 前端进阶之JavaScript设计模式
- 设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
- 立即学习 543次学习
-
- GO语言核心编程课程
- 本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
- 立即学习 516次学习
-
- 简单聊聊mysql8与网络通信
- 如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让
- 立即学习 500次学习
-
- JavaScript正则表达式基础与实战
- 在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
- 立即学习 487次学习
-
- 从零制作响应式网站—Grid布局
- 本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
- 立即学习 485次学习