- CPU 监控 - 使用率、核心数、负载均衡
- 内存监控 - 使用率、已用/总量、可用内存
- 磁盘监控 - 使用率、IO 速度、多分区支持
- 网络监控 - 上传/下载速度、累计流量
- CPU & 内存 60 秒趋势图
- 网络流量历史图表
- Chart.js 平滑动画
- Gateway 运行状态
- 一键启动/停止/重启
- 实时日志查看
- 内存/CPU 占用监控
- Top 20 进程实时更新
- CPU/内存排序
- 进程状态、用户信息
- CPU 型号、核心/线程数
- GPU 信息
- 内存总量、Swap 使用
- 操作系统、架构信息
- Python 3.11+
- Poetry (包管理器)
# 克隆或进入项目目录
cd ~/projects/server-dashboard
# 安装依赖 (自动通过 poetry)
poetry install
# 一键启动
./start.sh start
# 查看状态
./start.sh status
# 停止服务
./start.sh stop
| 命令 |
说明 |
./start.sh start |
启动服务 |
./start.sh stop |
停止服务 |
./start.sh restart |
重启服务 |
./start.sh status |
查看运行状态 |
./start.sh logs |
实时查看日志 |
./start.sh install |
安装为系统服务(开机自启) |
./start.sh uninstall |
卸载系统服务 |
| 类别 |
技术 |
| 后端 |
FastAPI, WebSocket, psutil, Pydantic |
| 前端 |
Vue 3, TailwindCSS, Chart.js |
| 包管理 |
Poetry |
| 实时通信 |
WebSocket |
server-dashboard/
├── backend/
│ └── main.py # FastAPI 后端
├── frontend/
│ └── index.html # Vue 3 前端
├── start.sh # 一键启动脚本
├── pyproject.toml # Poetry 配置
├── README.md # 本文档
└── ai.openclaw.server-dashboard.plist # macOS 服务配置
| 端点 |
方法 |
说明 |
/ |
GET |
前端页面 |
/health |
GET |
健康检查 |
/api/system |
GET |
系统状态 |
/api/openclaw |
GET |
OpenClaw 状态 |
/api/processes |
GET |
进程列表 |
/api/disks |
GET |
磁盘分区 |
/api/network |
GET |
网络接口 |
/api/info |
GET |
系统硬件信息 |
/api/docker |
GET |
Docker 容器 |
/api/cron |
GET |
定时任务 |
/api/security |
GET |
安全状态 |
/api/all |
GET |
所有数据 |
/api/openclaw/start |
POST |
启动 OpenClaw |
/api/openclaw/stop |
POST |
停止 OpenClaw |
/api/openclaw/restart |
POST |
重启 OpenClaw |
/api/openclaw/logs |
GET |
OpenClaw 日志 |
{
"system": { "cpu_percent": 25.5, "memory_percent": 60.2, ... },
"openclaw": { "running": true, "pid": 12345, ... },
"processes": [...],
"disks": [...],
"network": [...],
"info": { "cpu_model": "Apple M1", ... },
"history": { "cpu": [...], "memory": [...] }
}
# 安装为系统服务
./start.sh install
# 管理服务
launchctl load ~/Library/LaunchAgents/ai.openclaw.server-dashboard.plist # 启动
launchctl unload ~/Library/LaunchAgents/ai.openclaw.server-dashboard.plist # 停止
# 复制服务文件
sudo cp server-dashboard.service /etc/systemd/system/
# 启用并启动
sudo systemctl enable server-dashboard
sudo systemctl start server-dashboard
# 构建镜像
docker build -t server-dashboard .
# 运行容器
docker run -d -p 8000:8000 --name dashboard server-dashboard
- 确保已安装并登录 Tailscale
- 获取 Tailscale IP:
tailscale ip
- 从其他设备访问:
http://<tailscale-ip>:8000
- 🎨 玻璃态设计 - 毛玻璃卡片 + 发光边框
- 📐 动态网格 - 无限循环移动的网格背景
- ⚡ 扫描线效果 - 科技感十足的扫描线动画
- 📊 实时图表 - Chart.js 平滑动画
- 🔄 可折叠面板 - 点击展开/收起各模块
- 💫 脉冲动画 - 运行状态呼吸灯效果
| 变量 |
默认值 |
说明 |
HOST |
0.0.0.0 |
监听地址 |
PORT |
8000 |
监听端口 |
# 检查端口占用
lsof -i :8000
# 查看日志
./start.sh logs
- 检查浏览器控制台 (F12 → Console)
- 尝试强制刷新 (
Cmd+Shift+R 或 Ctrl+Shift+R)
- 检查防火墙设置
# 检查 Tailscale 状态
tailscale status
# 获取 IP
tailscale ip
- 全新 Vue 3 前端重构
- 实时图表支持
- 可折叠面板
- 系统信息、安全状态、定时任务模块
- 一键启动脚本
- Tailscale 远程访问支持
- WebSocket 实时推送
- 更多监控模块
- 视觉升级
欢迎提交 Issue 和 Pull Request!
MIT