news 2026/9/9 15:01:17

如何 5 分钟用 Docker 部署 Hermes WebUI:三种容器模式完整指南

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
如何 5 分钟用 Docker 部署 Hermes WebUI:三种容器模式完整指南

如何 5 分钟用 Docker 部署 Hermes WebUI:三种容器模式完整指南

【免费下载链接】hermes-webuiHermes WebUI: The best way to use Hermes Agent from the web or from your phone!项目地址: https://gitcode.com/GitHub_Trending/he/hermes-webui

想把 Hermes Agent 挂到局域网里,随时随地从浏览器或手机打开它,又不想在机器上逐个安装依赖?Hermes WebUI Docker 部署就是最省事的路子:用 Docker Compose 把 Hermes WebUI 装进一个容器,它就是 Hermes Agent 的网页入口,负责会话、聊天和工作区管理。

5 分钟从零到可访问

先花 10 秒确认环境里装了 Docker 和 Compose 工具:

docker --version docker compose version

两条命令都能输出版本号就够用了。接着克隆仓库并启动容器:

git clone https://gitcode.com/GitHub_Trending/he/hermes-webui cd hermes-webui docker compose up -d

这里默认走单容器模式:一个 WebUI 容器把 agent 一并跑起来(agent 就是替你执行任务的 AI 程序)。首次启动会自动构建镜像,多等几分钟很正常。

想改端口或密码也不用改 YAML,把模板拷一份再编辑即可:

cp .env.docker.example .env

浏览器打开http://localhost:8787,能看到会话列表和聊天框,就说明部署成功:

一步确认成功

docker compose ps

判定标准只有一条:hermes-webui状态为Up,端口映射显示8787→8787。状态在restartingexited,直接用下一节的命令查日志定位原因。

选对模式:三种容器化部署对比

部署跑通后再考虑选型,Hermes WebUI 提供了三套 Docker Compose 文件:

配置文件容器组成适合谁一句话区别
docker-compose.yml1 个 WebUI 容器个人尝鲜、快速上手agent 和界面同容器,最省事
docker-compose.two-container.ymlagent + webui想让两者故障互不拖累agent 独立成容器,经共享卷通信
docker-compose.three-container.ymlagent + webui + dashboard需要独立监控面板多一个 dashboard 容器

多数人用单容器模式就够了,升级时机见后文。

用 .env 定制:一行命令改默认端口

打开 .env,只有三个参数值得动:

参数怎么取 / 怎么设作用
UID/GID执行id -uid -g把结果填进去让容器内进程和宿主机同一身份,能读写挂载的目录
端口把端口映射改成"127.0.0.1:8888:8787"换掉默认 8787,避开端口冲突
HERMES_WEBUI_PASSWORD填任意你记得住的字符串给 WebUI 加登录密码,端口对外暴露时必填

改完保存,docker compose up -d重新加载即可生效。

两个关键挂载,数据不随容器消失

容器删了数据就没了,Docker 部署里靠卷挂载解决这个问题。Hermes WebUI 默认挂两个目录:

  • .hermes:会话、配置和状态数据的家,宿主机默认在~/.hermes
  • workspace:工作区文件,也就是聊天界面里浏览和编辑的项目文件,默认在~/.workspace同级的~/workspace

两个路径都可以用环境变量改,不用动 compose 文件:

export HERMES_HOME=/data/hermes export HERMES_WORKSPACE=/data/my-workspace docker compose up -d

什么时候才需要升级多容器

单容器能满足绝大多数个人场景,出现下面情况再考虑升级:

  • 你已经在独立容器里跑 agent,或希望 agent 网关和 WebUI 故障互不影响,用双容器:
docker compose -f docker-compose.two-container.yml up -d
  • 还要一个独立的 dashboard 容器做监控管理,用三容器:
docker compose -f docker-compose.three-container.yml up -d

⚠️ 避坑清单

权限报错(Permission denied)

  • 现象:容器起不来,或读写挂载目录失败
  • 原因:容器内 UID/GID 与宿主机用户不一致
  • 解决:.env 写入UID=$(id -u)GID=$(id -g)的值,再docker compose up -d

端口被占用

  • 现象:启动即报错,提示 8787 端口已绑定
  • 原因:机器上已有程序占着 8787
  • 解决:把 docker-compose.yml 的映射改为"127.0.0.1:8888:8787",改docker compose up -d后用http://localhost:8888访问

启动失败

  • 现象:docker compose ps显示restartingexited
  • 原因:日志里写明了,多数是挂载目录权限或 .env 拼写问题
  • 解决:docker compose logs hermes-webui定位后,修复再docker compose up -d

维护速查

docker compose logs -f hermes-webui # 跟踪实时日志 docker compose down # 停止全部容器 git pull && docker compose down && docker compose up -d --build # 更新到最新代码并重建 docker system prune # 清理无用镜像和容器

上手之后

界面分三个区域:左侧是会话列表和模型选择,中间是聊天框,支持文字输入和文件上传,右侧是工作区文件浏览器,项目的文件都从这里管理:

个人在笔记本上开一个,团队在同一台机器上共用一个,都是这条最短路径能覆盖的用法。

【免费下载链接】hermes-webuiHermes WebUI: The best way to use Hermes Agent from the web or from your phone!项目地址: https://gitcode.com/GitHub_Trending/he/hermes-webui

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/9 15:00:16

Sqoop离线数据采集工具安装与实战:MySQL到HDFS/Hive完整指南

1. 标题拆解:为什么最终落点是离线采集工具 Sqoop看到这个标题,我猜有一半人是冲着 Gemini 永久会员来的,另一半是真想找 Sqoop 离线数据采集工具的安装教程。Gemini 相关的“永久会员”这类说法,基本可以默认不太靠谱。正规服务很…

作者头像 李华
网站建设 2026/9/9 15:00:12

STM32F407驱动42步进电机:基于CubeMX的PWM控制与加减速实战

简介:面向STM32F407入门与进阶开发者的步进电机控制工程资源,介绍基于Cortex-M4内核MCU驱动42步进电机的完整实现方案,核心覆盖每步1.8度精确定位、TB6600细分驱动芯片接线逻辑、GPIO推挽输出配置及脉冲/方向/使能控制策略,适合正…

作者头像 李华
网站建设 2026/9/9 14:57:48

无人机巡检机巢选址的Matlab实现与遗传算法求解方法

无人机巡检项目的机巢布点选址,听起来像是个带约束的覆盖问题,但真正接手的电力巡检规划人员都知道,难点不在于把公式列出来,而在于把约束从现场搬进Matlab代码。机巢不是越多越好,太密的覆盖浪费成本;机巢…

作者头像 李华
网站建设 2026/9/9 14:56:37

Wall壁纸应用实测:免费自定义生成AMOLED极简壁纸

1. 换壁纸这件事,为什么值得专门写一篇先问个问题:你上一次认认真真给手机挑一张壁纸,是什么时候?大多数人的答案可能是"刚换手机那天",然后就是默认壁纸一直用到下一次换机。我见过太多人用着几十张随手截图…

作者头像 李华
网站建设 2026/9/9 14:54:41

OpenClaw中文兼容性解析:网页爬虫的GBK编码与UA指纹优化

我无法根据当前输入内容生成符合要求的博文。 原因如下: 输入中仅提供了项目标题 "OpenClaw近一半用户来自中国,大家在FOMO什么?" ,但未提供任何实质性的【项目正文】、【关键词】或【摘要描述】。 标题本身是一个…

作者头像 李华