DockWatch:轻量级 Docker 监控与异常检测及 Telegram 警报
发布: (2026年3月2日 GMT+8 08:16)
3 分钟阅读
原文: Dev.to
Source: Dev.to
Introduction
您是否在 Docker 容器上盲目操作?只需一条命令即可改变这一切。
DockWatch 是一个轻量级、自托管的 Docker 监控仪表盘,零配置即可让您全面了解容器运行状态。
Features
- 实时仪表盘 – 暗色主题 UI,支持可排序表格和 Chart.js 图表。
- 容器监控 – CPU %、内存 %、网络 I/O、块 I/O、重启次数。
- 主机监控 – CPU/GPU 温度、磁盘使用率、负载平均值。
- 异常检测 – 内置六条规则:CPU 峰值、内存溢出、高温、磁盘满、意外重启、网络突增。
- Telegram 警报 – 实时通知,每种警报类型有 30 分钟的冷却时间。
- 安全性 – 基本认证、速率限制、HTTPS(自签名或 Cloudflare Tunnel)。
- 轻量级 – 仅依赖 4 个 Python 包,使用 SQLite 并保留 7 天数据。
Installation
git clone https://github.com/deep-on/dockwatch.git
cd dockwatch
bash install.sh
交互式安装程序在一分钟内完成认证、Telegram 警报和 HTTPS 的配置。
Requirements
- Docker(带 Compose v2)
- Git
- OpenSSL
Anomaly Detection Rules
| 规则 | 条件 |
|---|---|
| 容器 CPU | 连续 3 次检查 > 80 % |
| 容器内存 | 超过限制的 > 90 % |
| 主机 CPU 温度 | > 85 °C |
| 主机磁盘 | 使用率 > 90 % |
| 容器重启 | restart_count 增加 |
| 网络突增 | 接收速率 ↑10 倍 且 > 100 MB |
所有阈值均可通过环境变量进行配置。
Access Options
- 本地网络 – 自签名 SSL,访问地址
https://localhost:9090 - 远程访问 – 端口转发选项
- Cloudflare Tunnel – 推荐的远程访问方式;无需端口转发,并提供正式的 TLS 证书
Why DockWatch?
现有的 Docker 监控方案要么过于臃肿(如 Prometheus + Grafana),要么过于简陋(仅显示容器状态)。DockWatch 旨在提供折中方案:足够轻量,适合家庭服务器,同时足够智能,能够自动检测问题并通过 Telegram 通知您。
Repository
🔗 GitHub:
欢迎提交反馈、问题和 Pull Request。如果您觉得它有用,请在 GitHub 上点个 ⭐ 表示支持。
由 DeepOn Inc. 构建