一、为什么我要监控树莓派?
我的树莓派一直在跑:
- Docker
- Gitea
- Drone
- Hugo 生成的博客
- FRP(实现外网访问)
- …以及后面要加的一些服务
虽然这些服务本身都运行良好,但有一点让我不太安心:
“我怎么知道树莓派的资源有没有快满了?容器吃不吃内存?夏天温度高了会不会过热?”
我不想等服务挂了才去排查,最好能随时掌握系统运行情况。于是我决定,装一个实时可视化监控平台。
二、选择 Netdata:轻量 + 好看 + Docker 友好
我评估了几个选项:
- Prometheus + Grafana:太重了,适合集群,不适合树莓派
- Netdata:轻量、自动识别 Docker、开箱即用,还有 Web UI!
所以最后我选择了 Netdata。
三、通过 Docker 安装 Netdata
我直接用官方提供的 docker compose:
|
|
几乎不需要改配置,容器启动后直接打开:
|
|
就能看到炫酷的仪表盘了,CPU、内存、容器状态一览无余。
四、我最关注的监控项
🌡️ 树莓派的 CPU 温度
树莓派一到夏天就容易发热。Netdata 会自动识别温度传感器,直接显示 CPU 当前温度。
🧠 内存和 swap 使用
树莓派内存只有 4G,当多个服务一起跑时,Netdata 的 swap 图会及时提醒我是否溢出。
五、我如何实现外网访问?
Netdata 默认监听本地 19999
端口,局域网能看,但我希望出门在外也能随时查看树莓派状态。
我采用的方案依然是熟悉的组合拳:FRP + 自定义子域名 + 基本认证,做到安全又方便。
🔧 配置思路如下:
- 树莓派运行
frpc
,将 Netdata 的 19999 端口暴露出去 - 使用
http
类型代理 +subdomain
子域名,绑定域名 - 加上
httpUser
和httpPassword
,避免 Netdata 面板直接暴露在公网下
✅ 我的 frpc.toml
配置示例:
|
|
这样我就可以随时在手机或 Mac 上打开仪表盘,查看树莓派的实时状态。
六、下一步考虑加上告警
Netdata 支持很多告警机制,包括:
- 内置阈值检测(如 CPU > 90%,温度 > 70°C)
- 邮件 / Telegram / Slack 等通知方式
我还没加,主要因为自己也还在摸索中。
七、小结:把树莓派“看得见”
部署 Netdata 后,我就像给树莓派装了一个“控制中心”。 不再需要 ssh 上去,一眼看懂全局。
家庭云平台,不能只是“能跑”,也要“看得见”、“查得清”。
下一篇文章,我会来一波终极汇总,把这一路折腾的所有服务串起来,让你看到我的完整“家庭云”全家桶。