Uptime Kuma:给 NAS 上所有服务装一个挂了立刻知道的哨兵
一句话结论
NAS 上跑的服务越来越多,你不可能每天挨个打开确认它们还活着。Uptime Kuma 做的事很简单:定时探测每个服务,挂了立刻通知你。 它是自建监控里门槛最低的一个——一份 Compose、一个端口,十分钟就能跑起来,而且免费版的监控数量和通知渠道都不限量。
为什么 NAS 用户特别需要它
家庭 NAS 上的服务有个特点:平时没人看,出问题才发现。
典型场景:下载机半夜挂了,第二天你才知道任务没跑完;相册服务悄悄崩了,家人抱怨”打不开”,你才知道。这类问题靠人肉巡检解决不了,靠监控系统才能。
Uptime Kuma 覆盖的探测类型足够家庭用:
| 类型 | 适合监控什么 |
|---|---|
| HTTP(S) | 各种 Web 服务,最常用 |
| TCP 端口 | 数据库、非 HTTP 服务 |
| Ping | 设备是不是还在线 |
| DNS | DNS 服务是否正常解析 |
| Docker 容器 | 容器运行状态(需要挂 docker.sock) |
部署
services:
uptime-kuma:
image: louislam/uptime-kuma:2
container_name: uptime-kuma
restart: always
ports:
- "3001:3001"
volumes:
- ./data:/app/data
- /var/run/docker.sock:/var/run/docker.sock:ro
environment:
- TZ=Asia/Shanghai
启动后访问 `http://NAS的IP:3001`,第一次打开会让你创建管理员账号,填完就进主界面。
关于挂载 docker.sock:这一行是可选的,加了之后 Uptime Kuma 能直接读取容器状态,可以直接选容器来监控,不用手填端口。只读(`:ro`)挂载,风险可控。如果你不需要这个能力,把这行删掉更安全。
添加第一个监控
点「Add New Monitor」,几个关键字段:
| 字段 | 怎么填 |
|---|---|
| Monitor Type | Web 服务选 HTTP(S),其他选 TCP / Ping |
| Friendly Name | 起个你能认出来的名字 |
| URL / Hostname | 要探测的地址 |
| Heartbeat Interval | 探测间隔,默认 60 秒,家庭用 60~300 秒都行 |
| Retries | 失败几次才判定为挂,建议填 2~3 |
Retries 这一项别填 1。 网络偶尔抖一下就报警,会让你很快麻木掉,最后彻底不看通知了。填 2 或 3,能过滤掉大部分误报。
通知怎么配,决定它有没有用
这是最容易被忽略、但决定成败的一步。监控不配通知等于没装。
Uptime Kuma 支持的通知渠道非常多(各类即时通讯、邮件、Webhook 等),家庭场景我建议这样配:
1. 选一个你手机上一定会看到的渠道——即时通讯类最合适,邮件容易被忽略 2. 在 Settings → Notifications 里添加 3. 勾上 Apply on all existing monitors(应用到所有已有监控) 4. 配完一定要手动测一次:把某个监控的目标地址故意填错,看你能不能收到告警
第四步不能省。 很多人的监控装完半年没响过,最后发现是通知根本没配通。
家庭场景该监控哪些东西
按优先级排:
第一优先级:你依赖的服务。 相册、网盘、下载机这些每天在用的,挂了会立刻影响生活。
第二优先级:基础设施。 反向代理、DNS 服务、NAS 后台本身。它们挂了会连带影响一批服务。
第三优先级:外部依赖。 你的公网 IP 是否可达、DDNS 是否还解析正确。
不要监控的东西:临时起的服务、你随时可以不要的测试容器。监控太多同样会让你麻木。
一个进阶用法:挂个状态页
Uptime Kuma 自带状态页功能,可以把监控结果做成一个公开页面。家庭场景的实用价值是:给家人一个”服务是不是正常”的自助查询入口,不用他们来问你。
如果你已经装了反向代理,把状态页挂在子域名上,比直接暴露端口体面得多。
常见坑
容器起来了但页面打不开。 先看日志:`docker logs -f uptime-kuma`。最常见原因是端口 3001 被别的服务占了。
告警特别频繁。 先调大 Retries,再看是不是探测间隔太短。家庭网络偶尔抖动是常态,监控系统要容忍它。
数据丢了。 只要 `./data:/app/data` 这个卷挂对了,容器重建数据还在。备份的时候只备份这一个目录就够了,这是它数据管理做得干净的地方。
升级出问题。 大版本升级前把 `data` 目录复制一份,出问题直接还原目录、回滚镜像标签即可。
小结
Uptime Kuma 的价值不在功能多强,而在于它把”不知道服务挂了”变成”挂了马上知道”。对家庭 NAS 来说,这一条就够了。装它的成本是十分钟,省下来的是反复排查”这个服务什么时候开始不正常的”的时间。
