hermes-webui 安装
hermes-webui仓库地址 下面是这次完整可用版流程,适合 Ubuntu 22.04 + root 用户 + 局域网访问 Hermes WebUI。
1. 安装基础依赖
apt update
apt install -y git curl python3 python3-pip python3-venv python3.10-venv
2. 下载 Hermes WebUI
mkdir -p /work
cd /work
git clone https://github.com/nesquena/hermes-webui.git
cd /work/hermes-webui
3. 配置 .env
nano /work/hermes-webui/.env
写入:
HERMES_WEBUI_HOST=0.0.0.0
HERMES_WEBUI_PORT=8787
HERMES_WEBUI_PASSWORD=换成你的强密码
HERMES_HOME=/root/.hermes
HERMES_CONFIG_PATH=/root/.hermes/config.yaml
HERMES_WEBUI_DEFAULT_WORKSPACE=/root/workspace
HERMES_WEBUI_AGENT_DIR=/usr/local/lib/hermes-agent
HERMES_WEBUI_PYTHON=/usr/local/lib/hermes-agent/venv/bin/python
保存:
Ctrl + O
Enter
Ctrl + X
4. 确认 Hermes Agent 存在
ls /usr/local/lib/hermes-agent
ls /usr/local/lib/hermes-agent/venv/bin/python
如果 Hermes Agent 没装,需要先安装 Hermes。
5. 安装 WebUI 依赖到 Hermes Agent 的 Python 环境
这是这次排查里最关键的一步。否则 WebUI 自己的 .venv 可能无法同时加载 WebUI 依赖和 Hermes Agent。
cd /work/hermes-webui
/usr/local/lib/hermes-agent/venv/bin/python -m pip install -r requirements.txt
6. 如果之前启动失败过,删除坏掉的 .venv
rm -rf /work/hermes-webui/.venv
7. 启动 WebUI
cd /work/hermes-webui
./ctl.sh start
查看状态:
./ctl.sh status
正常应该看到:
running
Bound: 0.0.0.0:8787
Health: ok
8. 检查端口监听
ss -lntp | grep 8787
正常应该看到:
0.0.0.0:8787
如果只看到:
127.0.0.1:8787
说明 .env 没生效,检查 HERMES_WEBUI_HOST=0.0.0.0。
9. 局域网访问
在其他电脑浏览器打开:
http://Ubuntu机器IP:8787
例如:
http://192.168.3.212:8787
健康检查地址:
http://192.168.3.212:8787/health
10. 如果访问不了,检查防火墙
ufw status
如果开启了 ufw,放行局域网:
ufw allow from 192.168.3.0/24 to any port 8787 proto tcp
11. 常用管理命令
cd /work/hermes-webui
./ctl.sh start
./ctl.sh stop
./ctl.sh restart
./ctl.sh status
./ctl.sh logs --lines 100
日志位置:
/root/.hermes/webui.log
这次遇到的问题和解决方式
旧进程占用端口:
ss -lntp | grep 8787
kill 进程PID
缺少 venv:
apt install -y python3-venv python3.10-venv
坏掉的 .venv:
rm -rf /work/hermes-webui/.venv
WebUI 无法同时加载 Hermes Agent:
/usr/local/lib/hermes-agent/venv/bin/python -m pip install -r /work/hermes-webui/requirements.txt
并在 .env 指定:
HERMES_WEBUI_AGENT_DIR=/usr/local/lib/hermes-agent
HERMES_WEBUI_PYTHON=/usr/local/lib/hermes-agent/venv/bin/python
最终确认方式:
curl http://127.0.0.1:8787/health
curl http://192.168.3.212:8787/health
能返回:
{
"status": "ok"
}
就说明安装成功。