
如何用 Docker Compose 五分钟部署 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-webuiHermes WebUI Docker 部署只需要四步克隆仓库、起容器、验证状态、打开浏览器随后就能在电脑或手机上管理 Hermes Agent。前提是你已装好 Docker 与 Compose新手直接选单容器模式即可后文再覆盖架构选择、数据持久化与故障排查。五分钟启动最短路径启动容器单容器模式是最短的部署路径一个容器里同时跑 WebUI 和 agent不用操心服务间通信。第一步拿到仓库git clone https://gitcode.com/GitHub_Trending/he/hermes-webui cd hermes-webui仓库里自带 Compose 配置和镜像构建文件这一步不用动任何东西。第二步启动容器docker compose up -d首次运行会现场构建镜像可能花几分钟耐心等命令返回即可。第三步确认状态docker compose ps只要 hermes-webui 这一行显示 running服务就已经在跑了。第四步浏览器打开http://localhost:8787界面直接出来。整个过程顺利的话不到五分钟。把每个配置项讲清楚身份、端口、密码默认配置开箱即用但建议还是把.env过一遍。先复制模板cp .env.docker.example .env整个文件其实只有三组开关值得关心。第一组身份UID/GID。它管容器能不能读你盘上的文件。容器里的运行用户必须和你本机用户一致否则挂载进来的.hermes目录对它就是乱码。用id -u和id -g查自己的值写进.envUID$(id -u) GID$(id -g)Linux 上默认值 1000 通常就对macOS 的 UID 从 501 开始必须手动设置否则容器大概率读不到你的配置。第二组端口。它管WebUI 从哪里被访问。默认监听 8787官方 compose 默认绑定到 127.0.0.1也就是只有本机能打开。想从局域网其他设备访问把 compose 里的端口前缀127.0.0.1:去掉即可——但记得先做完下一组的安全设置。第三组安全密码。它管端口开放后谁能进来。只要端口不再只绑本机HERMES_WEBUI_PASSWORD就是必选项否则任何能访问到端口的人都能以 agent 身份执行命令echo HERMES_WEBUI_PASSWORDchange-me-to-something-strong .env docker compose up -d --force-recreate第二条命令的作用是重建容器新环境变量才会生效。该选哪种部署架构单容器、双容器、三容器仓库内置了三份 compose 文件区别一目了然方案文件容器数量隔离程度适用场景单容器docker-compose.yml1无隔离agent 内嵌在 WebUI 中想让聊天尽快跑起来个人使用双容器docker-compose.two-container.yml2agent 网关与 WebUI 进程分离想让 CLI/cron 网关和聊天界面各自独立重启三容器docker-compose.three-container.yml3在双容器基础上多一个监控面板需要观察 agent 活动与资源占用dashboard 跑在 9119 端口我的建议很明确多数人选单容器就够了别过度设计。它同时也是排障时的第一落脚点——多容器出了问题先退回单容器验证。两点补充。双/三容器模式默认用命名卷天然绕开了 UID 权限坑但要注意一个已知限制——多容器下从 WebUI 触发的工具实际运行在 WebUI 容器里如果你的工具链依赖 git、node 这类二进制单容器更省心。各架构的细节可看官方文档 docs/docker.md。让数据不丢卷挂载与自定义数据存储位置不配持久化docker compose down一跑聊天记录和配置全没。默认配置里挂了两个目录分工如下宿主机目录默认容器内路径存放内容~/.hermes/home/hermeswebui/.hermes配置、会话、状态数据相当于 agent 的记忆~/workspace/workspace你的项目文件在 WebUI 文件浏览器里可直接浏览编辑想换个存储位置不用改 compose 文件往.env里写两个变量HERMES_HOME/data/hermes HERMES_WORKSPACE/data/projects/myproject两个坑要避开。其一别用sudo docker compose up -d——${HOME}会被展开成 root 的家目录挂错目录后 WebUI 会提示找不到config.yaml看着像数据丢了其实只是挂错了地方。其二多容器模式如果想用绑定挂载共享已有的宿主机目录所有容器必须以同一 UID/GID 运行命名卷则是更省事的默认选择。升级、清理与回退单容器源码构建升级就是三行git pull docker compose down docker compose up -d --build多容器镜像模式则先docker compose -f 对应文件 pull拉新镜像再up -d。注意 agent 镜像升级时那个缓存源码的hermes-agent-src卷不会自动刷新得先docker volume rm掉它再重建否则拉了新镜像也还是老代码。平时清理闲置镜像和容器docker system prune升级翻车了怎么回退镜像模式很简单——把 compose 里的 tag 钉回旧版本文档中列出了:1.5这类固定版本标签源码构建模式就git checkout回上一个提交再重新构建。数据都在挂载卷里来回切换容器版本不影响会话。五种常见故障的自我排查按现象 → 原因 → 解决来看基本能覆盖你遇到的大部分报错。1. 启动报 PermissionError / permission denied现象容器起来了但读写文件时报权限错误。 原因容器内 UID/GID 与你本机用户不一致。 解决.env里按前面方法设置UID和GID再--force-recreate。2. 端口 8787 被占用现象启动时提示端口冲突浏览器打不开页面。 原因本机已有别的进程占着 8787。 解决把 compose 端口映射改成127.0.0.1:8888:8787浏览器改用新端口访问。3. 容器起不来或反复重启现象docker compose ps显示 exited 或 restarting。 原因构建失败、环境变量缺漏都可能日志是唯一事实来源。 解决docker compose logs -f hermes-webui看最后几行报错十有八九直接写明了原因。4. 工作区里看不到文件现象界面正常打开文件浏览器却是空的。 原因/workspace挂载的 UID 不匹配容器读不了你的目录。 解决与第 1 条同理先查UID/GID是否配对了。5. sudo 启动后 WebUI 认不到 .hermes现象一切正常但 WebUI 提示找不到配置行为像刚初始化。 原因sudo 下${HOME}指向 root 的家目录挂载了错误的.hermes。 解决用普通用户跑 Compose实在要用 sudo加HERMES_HOME/home/you/.hermes HERMES_WORKSPACE/home/you/workspace sudo -E docker compose up -d显式指定绝对路径。启动后的界面速览部署完成界面长这样画面分三栏。左侧是会话区新建会话、切换历史记录、挑选模型都在这里完成。中间是聊天区与 Hermes Agent 对话、粘贴文本、上传文件都在这块输入。右侧是工作区直接浏览和管理你挂载进来的项目文件支持在线预览。个人自用按上面的最短路径走就够团队共享同一套 agent 实例时把端口开放出去并配好密码手机浏览器打开的是同一个界面。【免费下载链接】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),仅供参考