AIO-Monitor:Docker 部署 NAS / 软路由监控面板
本文属于「自托管 Docker 部署实战」系列(共 35 篇),第 7 篇。 示例中的 IP(192.0.2.10)、域名(example.com)、密码均为占位符,请按实际环境替换。
它是什么
AIO-Monitor(Physton/aio-monitor)是一个聚合监控面板:把 Proxmox VE、群晖 DSM、OpenWrt 软路由、Home Assistant 的传感器数据汇总到一个网页里,实时看 CPU、内存、温度、磁盘、虚拟机状态和自定义端口探活。
它没有官方镜像,需要从源码构建。
前置条件
- 一台 Linux 服务器(1C512M 起,纯展示);
- 已安装 Docker 与 Compose v2;
- 被监控设备要开放 API 或可访问的状态接口。
curl -fsSL https://get.docker.com | sh
mkdir -p /srv/docker/active/aio-monitor && cd /srv/docker/active/aio-monitor
镜像地址
无公开镜像:从源码 build(基础镜像 python:3.10.11)
目录结构
/srv/docker/active/aio-monitor/
├── docker-compose.yml
├── Dockerfile
├── main.py
├── config.yaml # 监控目标配置(必须是文件!)
└── logs/
部署步骤
# docker-compose.yml
services:
aio-monitor:
build: ./
container_name: aio-monitor
hostname: aio-monitor
restart: always
ports:
- "8000:8000"
volumes:
- ./config.yaml:/app/config.yaml
- ./logs:/app/logs
# 1) 准备配置:从示例复制,再按需修改
cp config.example.yaml config.yaml
chmod 600 config.yaml
# 2) 构建并启动
docker compose up -d --build
docker compose logs -f --tail=100
打开 http://<SERVER_IP>:8000。
关键配置
| 项 | 说明 |
|---|---|
8000:8000 |
Web 面板端口 |
./config.yaml |
监控目标与连接信息,必须是文件,不能是目录 |
./logs |
运行日志 |
build: ./ |
无官方镜像,改代码后要重新 build |
config.yaml 里通常要填:PVE 的地址/Token、DSM 账号、OpenWrt 地址、Home Assistant 地址与长期令牌。具体字段以项目 README 和 config.example.yaml 为准。
注意事项
config.yaml若被建成目录,容器挂载后会把目录当文件,应用直接读不到配置、面板起不来——这是最常见的启动失败原因;- 配置文件里有各设备的 Token/密码,权限设 600,不要提交 Git;
- 被监控设备要允许这台服务器访问对应端口,跨网段记得放行防火墙;
- 面板本身没有认证,只在内网或用反代加 Basic Auth;
- 自建镜像没有版本号,升级 =
git pull后重新build,先备份config.yaml。
备份与升级
# 备份配置
tar czf "aio-monitor-config-$(date +%F).tar.gz" ./config.yaml
# 升级(代码更新后)
docker compose up -d --build
# 回滚:代码切回旧版本,再 build
- 日志目录会持续增长,配 logrotate 或定期清空。
本文是原创文章,采用 CC BY-NC-ND 4.0 协议,完整转载请注明来自 程序员小航
评论
匿名评论
隐私政策
你无需删除空行,直接评论以获取最佳展示效果