文章目录
- Windows 10/11(已启用 WSL2) Docker Desktop for Windows(启用 WSL2 后端) 网络可访问 Docker Hub 或已配置镜像加速 LLM API 密钥(MiniMax、OpenRouter 等)或本地模型服务
- 下载 Docker Desktop:https://www.docker.com/products/docker-desktop 安装时勾选 "Use WSL 2 instead of Hyper-V" 安装完成后 重启电脑 打开 CMD 验证: docker –version 看到类似 Docker version 27.x.x 的输出就说明安装成功。
- 国内直接访问 Docker Hub 大概率超时,这一步别跳过。 方法 A:镜像加速器 打开 Docker Desktop → Settings → Docker Engine,在 JSON 配置中添加: { “registry-mirrors”: [ “https://docker.1ms.run”, “https://docker.xuanyuan.me” ] } 点击 Apply & Restart。 方法 B:代理配置(适合有科学上网工具的同学) Docker Desktop → Settings → Resources → Proxies,填入你的代理地址: HTTP Proxy: http://127.0.0.1:7890 HTTPS Proxy: http://127.0.0.1:7890 💡 两种方法选一种即可。如果你本身网络环境没问题,可以跳过这步。
- mkdir %USERPROFILE%.hermes 所有配置、密钥、会话、技能、记忆都存储在这个目录中,后续升级也不会丢失。
- docker run -it –rm ^ -v %USERPROFILE%.hermes:/opt/data ^ nousresearch/hermes-agent setup 向导会引导你配置 LLM 提供商、API 密钥、工具等,跟着提示一步步选就行。 ⚠️ 如果拉取镜像超时,请先完成第 2.3 节的镜像加速配置。
- Setup 完成后,.hermes 目录下会生成以下内容: 文件/目录 用途 config.yaml 主配置文件(模型、工具、后端等) .env API 密钥和环境变量 skills/ 技能文档目录 sessions/ 会话历史记录 MEMORY.md 环境事实、经验教训 USER.md 用户偏好和沟通风格 logs/ 日志文件
- 编辑 .env 文件: notepad %USERPROFILE%.hermes.env 添加一行: MINIMAX_CN_API_KEY=sk-api-xxxxx……你的密钥 编辑 config.yaml: notepad %USERPROFILE%.hermesconfig.yaml 修改 model 部分: model: default: MiniMax-M2.5 provider: minimax-cn base_url: https://api.minimaxi.com/v1 ⚠️ 踩坑提醒: 中国区域名是 minimaxi.com(多一个 i),不是 minimax.io。写错了会一直报 401。
- 如果你有本地部署的 OpenAI 兼容 API,配置如下: 编辑 .env: OPENAI_API_KEY=dummy OPENAI_API_BASE=http://172.28.138.207:8007/v1 编辑 config.yaml: model: default: Qwen3-30B-A3B provider: custom base_url: http://172.28.138.207:8007/v1 api_key: dummy context_length: 32768 💡 关键提示: 模型跑在本机?容器内用 http://host.docker.internal:端口 访问 模型在局域网其他机器?直接用 IP 地址 千万别写 localhost,Docker 容器里的 localhost 是容器自己
- 编辑 .env: OPENROUTER_API_KEY=sk-or-xxxxx 编辑 config.yaml: model: default: anthropic/claude-sonnet-4 provider: openrouter base_url: https://openrouter.ai/api/v1
- ⚠️ Hermes 要求模型至少 64K 上下文窗口。 如果使用本地模型,需确保推理框架启动时设了足够大的 context size(如 –ctx-size 65536),否则会启动失败。
- docker run -d –name hermes ^ –restart unless-stopped ^ -v %USERPROFILE%.hermes:/opt/data ^ nousresearch/hermes-agent gateway run 参数说明: -d:后台运行 –restart unless-stopped:意外退出自动重启 -v:挂载数据目录
- 不想对接平台,就想在命令行聊?直接: docker run -it –rm ^ -v %USERPROFILE%.hermes:/opt/data ^ nousresearch/hermes-agent
- docker exec -it hermes hermes status
- 微信通过 Hermes 内置的桥接功能实现。配置完成后,新用户首次发消息会触发配对机制: docker exec -it hermes hermes pairing approve weixin <配对码> 如果想跳过配对,允许所有用户直接使用,在 .env 中添加: WEIXIN_ALLOW_ALL_USERS=true
- 在 Telegram 搜索 @BotFather,发送 /newbot 创建你的机器人 获取 Bot Token 运行 Gateway 配置向导: docker run -it –rm ^ -v %USERPROFILE%.hermes:/opt/data ^ nousresearch/hermes-agent gateway setup 选择 Telegram,粘贴 Token 重启容器使配置生效: docker restart hermes
- 字段 示例值 说明 model.default MiniMax-M2.5 默认模型名称 model.provider minimax-cn 提供商标识 model.base_url https://api… API 端点地址 terminal.backend local 终端后端(local/docker/ssh) display.personality kawaii 人格预设 compression.enabled true 上下文压缩
- 变量名 用途 MINIMAX_CN_API_KEY MiniMax 中国区 API 密钥 OPENROUTER_API_KEY OpenRouter 密钥 OPENAI_API_KEY 自定义端点 / OpenAI 密钥 OPENAI_API_BASE 自定义 API 基址 TELEGRAM_BOT_TOKEN Telegram Bot Token WEIXIN_ALLOW_ALL_USERS 微信是否允许所有用户
- docker pull nousresearch/hermes-agent:latest docker rm -f hermes docker run -d –name hermes ^ –restart unless-stopped ^ -v %USERPROFILE%.hermes:/opt/data ^ nousresearch/hermes-agent gateway run 💡 镜像是无状态的,所有数据在宿主机的 .hermes 目录中,升级不会丢失数据。
- 定期备份数据目录: xcopy %USERPROFILE%.hermes %USERPROFILE%.hermes-backup /E /I /Y 关键文件:config.yaml、.env、MEMORY.md、USER.md、sessions/ 目录。
- docker image prune -f
目录
- 一、Hermes Agent 是什么?
- 二、环境准备
- 2.1 系统要求
- 2.2 安装 Docker Desktop
- 2.3 配置镜像加速(国内用户必做 ⚠️)
- 三、拉取 Docker 镜像
- 四、初始化配置(Setup)
- 4.1 创建数据目录
- 4.2 运行 Setup 向导
- 4.3 数据目录结构说明
- 五、接入 LLM 模型
- 5.1 方案一:MiniMax(推荐国内用户)
- 5.2 方案二:本地模型(Qwen3、Ollama 等)
- 5.3 方案三:OpenRouter(200+ 模型,海外用户推荐)
- 5.4 模型要求
- 六、启动与运行
- 6.1 后台运行 Gateway(对接聊天平台用)
- 6.2 交互式聊天(CLI 模式)
- 6.3 查看运行状态
- 七、微信 / Telegram 对接
- 7.1 微信对接
- 7.2 Telegram 对接
- 八、常用命令速查表
- 九、配置文件详解
- 9.1 config.yaml 核心字段
- 9.2 .env 常用变量
- 十、日常维护
- 10.1 升级 Hermes
- 10.2 备份
- 10.3 清理旧镜像
- 十一、常见问题排查
- 十二、安全建议
- 写在最后
Hermes Agent 是 Nous Research 开发的开源自我进化型 AI 智能体(MIT 许可证)。和普通聊天机器人不同,它具备 内置学习闭环:能从经验中自动创建技能、主动持久化知识、搜索历史对话,并跨会话不断加深对用户的理解。
简单来说,它 越用越聪明。
核心亮点一览:
| 特性 | 说明 |
|---|---|
| 多模型支持 | OpenRouter、OpenAI、MiniMax、Qwen、本地模型等,随时切换 |
| 多平台网关 | Telegram、Discord、Slack、WhatsApp、Signal、微信、邮件、CLI |
| 持久化记忆 | MEMORY.md + USER.md + SQLite 全文搜索,跨会话保留 |
| 自动技能 | 复杂任务后自动创建可复用技能文档 |
| 工具生态 | 浏览器、终端、文件、代码执行、定时任务、子代理等 27+ 工具 |
| 六种后端 | local、Docker、SSH、Daytona、Singularity、Modal |
项目地址: NousResearch/hermes-agent
- Windows 10/11(已启用 WSL2)
- Docker Desktop for Windows(启用 WSL2 后端)
- 网络可访问 Docker Hub 或已配置镜像加速
- LLM API 密钥(MiniMax、OpenRouter 等)或本地模型服务
- 下载 Docker Desktop:https://www.docker.com/products/docker-desktop
- 安装时勾选 "Use WSL 2 instead of Hyper-V"
- 安装完成后 重启电脑
- 打开 CMD 验证:
docker --version
看到类似 Docker version 27.x.x 的输出就说明安装成功。
国内直接访问 Docker Hub 大概率超时,这一步别跳过。
方法 A:镜像加速器
打开 Docker Desktop → Settings → Docker Engine,在 JSON 配置中添加:
{
"registry-mirrors": [
"https://docker.1ms.run",
"https://docker.xuanyuan.me"
]
}
点击 Apply & Restart。
方法 B:代理配置(适合有科学上网工具的同学)
Docker Desktop → Settings → Resources → Proxies,填入你的代理地址:
HTTP Proxy: http://127.0.0.1:7890 HTTPS Proxy: http://127.0.0.1:7890
💡 两种方法选一种即可。如果你本身网络环境没问题,可以跳过这步。
在 Windows CMD 或 PowerShell 中执行:
docker pull nousresearch/hermes-agent:latest
拉取完成后验证:
docker images | findstr hermes
看到 nousresearch/hermes-agent 那一行就说明镜像到位了。
mkdir %USERPROFILE%.hermes
所有配置、密钥、会话、技能、记忆都存储在这个目录中,后续升级也不会丢失。
docker run -it --rm ^
-v %USERPROFILE%.hermes:/opt/data ^
nousresearch/hermes-agent setup
向导会引导你配置 LLM 提供商、API 密钥、工具等,跟着提示一步步选就行。
⚠️ 如果拉取镜像超时,请先完成第 2.3 节的镜像加速配置。
Setup 完成后,.hermes 目录下会生成以下内容:
| 文件/目录 | 用途 |
|---|---|
config.yaml |
主配置文件(模型、工具、后端等) |
.env |
API 密钥和环境变量 |
skills/ |
技能文档目录 |
sessions/ |
会话历史记录 |
MEMORY.md |
环境事实、经验教训 |
USER.md |
用户偏好和沟通风格 |
logs/ |
日志文件 |
这是最关键的一步。Hermes Agent 支持多种模型提供商,下面分别介绍三种常见方案。
编辑 .env 文件:
notepad %USERPROFILE%.hermes.env
添加一行:
MINIMAX_CN_API_KEY=sk-api-xxxxx……你的密钥
编辑 config.yaml:
notepad %USERPROFILE%.hermesconfig.yaml
修改 model 部分:
model: default: MiniMax-M2.5 provider: minimax-cn base_url: https://api.minimaxi.com/v1
⚠️ 踩坑提醒: 中国区域名是
minimaxi.com(多一个 i),不是minimax.io。写错了会一直报 401。
如果你有本地部署的 OpenAI 兼容 API,配置如下:
编辑 .env:
OPENAI_API_KEY=dummy OPENAI_API_BASE=http://172.28.138.207:8007/v1
编辑 config.yaml:
model: default: Qwen3-30B-A3B provider: custom base_url: http://172.28.138.207:8007/v1 api_key: dummy context_length: 32768
💡 关键提示:
- 模型跑在本机?容器内用
http://host.docker.internal:端口访问- 模型在局域网其他机器?直接用 IP 地址
- 千万别写
localhost,Docker 容器里的 localhost 是容器自己
编辑 .env:
OPENROUTER_API_KEY=sk-or-xxxxx
编辑 config.yaml:
model: default: anthropic/claude-sonnet-4 provider: openrouter base_url: https://openrouter.ai/api/v1
⚠️ Hermes 要求模型至少 64K 上下文窗口。 如果使用本地模型,需确保推理框架启动时设了足够大的 context size(如 --ctx-size 65536),否则会启动失败。
⚠️ Hermes 要求模型至少 64K 上下文窗口。 如果使用本地模型,需确保推理框架启动时设了足够大的 context size(如 --ctx-size 65536),否则会启动失败。
docker run -d --name hermes ^
--restart unless-stopped ^
-v %USERPROFILE%.hermes:/opt/data ^
nousresearch/hermes-agent gateway run
参数说明:
-d:后台运行--restart unless-stopped:意外退出自动重启-v:挂载数据目录
不想对接平台,就想在命令行聊?直接:
docker run -it --rm ^ -v %USERPROFILE%.hermes:/opt/data ^ nousresearch/hermes-agent
docker exec -it hermes hermes status
微信通过 Hermes 内置的桥接功能实现。配置完成后,新用户首次发消息会触发配对机制:
docker exec -it hermes hermes pairing approve weixin <配对码>
如果想跳过配对,允许所有用户直接使用,在 .env 中添加:
WEIXIN_ALLOW_ALL_USERS=true
- 在 Telegram 搜索 @BotFather,发送
/newbot 创建你的机器人
- 获取 Bot Token
- 运行 Gateway 配置向导:
docker run -it --rm ^
-v %USERPROFILE%.hermes:/opt/data ^
nousresearch/hermes-agent gateway setup
- 选择 Telegram,粘贴 Token
- 重启容器使配置生效:
docker restart hermes
/newbot 创建你的机器人
| 命令 | 用途 |
|---|---|
docker exec -it hermes hermes status |
查看当前状态 |
docker exec -it hermes hermes model |
切换模型/提供商 |
docker exec -it hermes hermes tools |
配置工具 |
docker exec -it hermes hermes setup |
重新运行 Setup 向导 |
docker exec -it hermes hermes doctor |
诊断问题 |
docker logs hermes |
查看容器日志 |
docker logs hermes --tail 100 |
查看最后 100 行日志 |
docker restart hermes |
重启容器 |
docker stop hermes |
停止容器 |
docker rm -f hermes |
删除容器(数据不丢失) |
| 字段 | 示例值 | 说明 |
|---|---|---|
model.default |
MiniMax-M2.5 |
默认模型名称 |
model.provider |
minimax-cn |
提供商标识 |
model.base_url |
https://api... |
API 端点地址 |
terminal.backend |
local |
终端后端(local/docker/ssh) |
display.personality |
kawaii |
人格预设 |
compression.enabled |
true |
上下文压缩 |
| 变量名 | 用途 |
|---|---|
MINIMAX_CN_API_KEY |
MiniMax 中国区 API 密钥 |
OPENROUTER_API_KEY |
OpenRouter 密钥 |
OPENAI_API_KEY |
自定义端点 / OpenAI 密钥 |
OPENAI_API_BASE |
自定义 API 基址 |
TELEGRAM_BOT_TOKEN |
Telegram Bot Token |
WEIXIN_ALLOW_ALL_USERS |
微信是否允许所有用户 |
docker pull nousresearch/hermes-agent:latest
docker rm -f hermes
docker run -d --name hermes ^
--restart unless-stopped ^
-v %USERPROFILE%.hermes:/opt/data ^
nousresearch/hermes-agent gateway run
💡 镜像是无状态的,所有数据在宿主机的 .hermes 目录中,升级不会丢失数据。
💡 镜像是无状态的,所有数据在宿主机的 .hermes 目录中,升级不会丢失数据。
定期备份数据目录:
xcopy %USERPROFILE%.hermes %USERPROFILE%.hermes-backup /E /I /Y
关键文件:config.yaml、.env、MEMORY.md、USER.md、sessions/ 目录。
docker image prune -f
| 问题 | 原因 | 解决方案 |
|---|---|---|
| 拉取镜像超时 | 国内无法访问 Docker Hub | 配置镜像加速或代理(见第 2.3 节) |
401 invalid api key |
API 密钥错误或区域不匹配 | 确认密钥有效,中国区用 minimax-cn |
No inference provider |
config.yaml 未配置模型 |
运行 hermes model 或手动编辑配置 |
| 容器访问不到本地模型 | Docker 网络隔离 | 用 host.docker.internal 替代 localhost |
| 微信配对提示 | 新用户安全验证 | hermes pairing approve weixin <码> |
| 模型拒绝启动 | 上下文窗口不足 64K | 推理框架设置 --ctx-size 65536 |
- 不要将
.env 提交到 Git 仓库,里面包含 API 密钥
- 微信、Telegram 等网关建议 开启用户白名单(
WEIXIN_ALLOW_ALL_USERS=false)
- 生产环境建议将
terminal.backend 设为 docker 或 ssh,提供沙箱隔离
- 定期更换 API 密钥,特别是在泄露风险后
- 定期备份
.hermes 目录
- 用
docker restart 而不是 docker rm + run 来避免配置遗漏
.env 提交到 Git 仓库,里面包含 API 密钥WEIXIN_ALLOW_ALL_USERS=false)terminal.backend 设为 docker 或 ssh,提供沙箱隔离.hermes 目录docker restart 而不是 docker rm + run 来避免配置遗漏
Hermes Agent 是一个非常有意思的项目——它不只是一个聊天机器人,而是一个能不断自我进化、记住你的偏好、自动积累技能的 AI 助手。配合 Docker 部署,整个过程其实并不复杂,核心就三步:拉镜像 → 配模型 → 启动。
到此这篇关于Hermes Agent Windows Docker 部署完全指南如何从零开始搭建你的自我进化AI 智能体的文章就介绍到这了,更多相关Hermes Agent Windows Docker 部署内容请搜索风君子博客以前的文章或继续浏览下面的相关文章,希望大家以后多多支持风君子博客!