Skip to content

Web 仪表盘

vminfo --web 启动一个轻量、只读的 HTTP API 和仪表盘,支持切换主题。

启动服务

bash
vminfo --web

默认地址:

text
http://127.0.0.1:20021

自定义地址:

bash
vminfo --web --bind 0.0.0.0 --port 8080 --interval 1s

也可以在仪表盘之外同时启动 TUI:

bash
vminfo --web --tui

鉴权

默认情况下,仪表盘和 API 仅限本地访问、无需鉴权。

启用 --token 时:

bash
vminfo --web --token
vminfo --web --token my-secret
  • --token 自动生成一个 URL 安全的 token
  • --token my-secret 使用固定 token
  • 首次通过 /?token=... 成功访问后会设置 cookie,供后续请求使用
  • /healthz 保持公开,供本地探针使用
  • //api/v1/*/ws 需要 token 或鉴权 cookie
  • token 保护模式不会暴露宽松的 Access-Control-Allow-Origin: *
  • WebSocket 升级要求浏览器 origin 与仪表盘主机一致

远程访问

当绑定到 0.0.0.0 时,除非仪表盘只暴露给受信任的私网,否则请启用 --token

端点

端点用途
GET /healthz公开的健康检查
GET /api/v1/snapshot完整运行时快照
GET /api/v1/cpuCPU 数据
GET /api/v1/memory内存与 swap 数据
GET /api/v1/disk文件系统与磁盘 I/O 数据
GET /api/v1/network网络总量与网卡数据
GET /api/v1/processes进程列表
GET /api/v1/system主机元数据
GET /api/v1/health健康评分与告警
POST /api/v1/net/diag运行网络诊断(dns / port / ping / ip)
GET /ws实时快照流

完整的请求/响应示例与查询参数见 HTTP API 参考

主题

仪表盘内置可从页头切换的主题:AutoNeonLightTerminalSynthwave。"Auto" 跟随系统配色。

JetBrains Mono 内嵌在二进制中,因此仪表盘完全自包含 —— 使用预期的等宽字体渲染,离线也能工作,无需外部字体请求。

最近更新

基于 MIT 协议发布。