Hermes Agent 跑在 Docker 里,Dashboard 从局域网打不开时,先检查端口映射和绑定地址,不要直接把 insecure 当成万能开关。2026 年 5 月 29 日的 v0.15.1 把 Docker Dashboard 的 --insecure 改成显式环境变量 HERMES_DASHBOARD_INSECURE=1,不会再因为绑定到非 loopback 地址就自动推断你想关闭同源保护。
先分清两个问题
绑定地址解决的是“别人能不能连到这个端口”,insecure 解决的是“是否放宽 Dashboard 的本地安全保护”。这两个不是一回事。你想在局域网打开 Hermes Agent Dashboard,通常需要正确映射端口、绑定到可访问地址,并确认防火墙放行;只有你明确知道自己要禁用 loopback 保护时,才考虑 HERMES_DASHBOARD_INSECURE=1。
建议按这个顺序查
- 确认容器还活着:
docker ps看 Hermes 容器是否在运行。 - 确认端口映射:宿主机端口要映射到 Dashboard 实际监听端口。
- 在宿主机本地访问一次,能打开再从局域网设备访问。
- 如果走 Nginx 或 Caddy,检查 WebSocket、Host 头和路径转发是否完整。
- 只有安全边界已经明确,比如只在内网测试环境,才设置
HERMES_DASHBOARD_INSECURE=1。
最常见的误判是:用户看到“局域网打不开”,就以为必须 insecure。实际上,很多时候只是 Docker 没映射端口、宿主机防火墙没放行,或者浏览器访问了容器内部地址。
生产环境怎么做更稳
如果 Hermes Agent 要长期跑在 VPS、家用服务器或团队内网,优先用反向代理加访问控制,而不是裸开 Dashboard。insecure 更像临时排障和受控实验开关,不适合长期暴露。你要的不是“能打开就行”,而是能打开、能控制访问、出了问题还能追日志。