几年前我分享过 Dashy 在威联通 NAS 上的搭建流程,做出来的效果确实蛮惊艳:一个赛博朋克风的设备信息监控面板,颜值和氛围感都很在线。

不过好看归好看,搭建过程也是真的折腾。这两天回头翻以前写的文章,忍不住感叹一句:当时的自己,居然能这么有耐心。
本篇再来分享一个简单,但是效果非常不错的Docker部署监控面板!!!CPU、风扇、显卡、硬盘等等,基本想到的常用硬件监控都在里面了。

项目介绍
站在巨人的肩膀上。这个项目最初由 Grafana、Prometheus、PostgreSQL 和多个采集器组成,功能虽然完整,但容器太多,部署和排障都比较麻烦。
后来借助 AI 重新整合,把原本多个容器封装成一个镜像。现在只需要修改 NAS IP、SNMP 信息和登录密码,启动一个容器就能实现相同效果,部署简单太多太多。
感谢朋友milesxia花时间折腾,感谢OAI。不过项目比较专,专门针对QNAP NAS做的调整和优化~
部署流程
以威联通 Qu405-N355 为例,通过Docker Compose的方式进行部署。
部署代码如下,请大家根据其中注释修改相关内容适配自己的威联通NAS。
services:
qnap-monitoring:
image: milesxia/qnap-monitoring:10.0.0-alpha.1
container_name: qnap-monitoring
restart: unless-stopped
privileged: true # 读取 QNAP 宿主机硬件信息需要
ports:
- "3300:3000" # Web 访问端口,3300 可自行修改
volumes:
- /share/Container/qnap-monitoring:/data # 配置、账号及历史数据持久化
- /share:/share:ro # 读取共享文件夹信息
- /proc:/host-proc:ro # 读取 CPU、内存、进程等信息
- /sys:/host-sys:ro # 读取硬件及 PCIe 信息
- /etc/config:/host-etc-config:ro # 读取 QNAP 系统配置
environment:
TZ: Asia/Shanghai # 容器时区
NAS_IP: 192.168.1.100 # 必改:填写当前 QNAP NAS 的局域网 IP
SNMP_COMMUNITY: public # 必改:需与 QTS 中 SNMP v2 Community 一致
QNAP_HOSTNAME: QNAP-NAS # 看板显示的 NAS 名称,可自定义
QNAP_ADMIN_USER: qnap # 首次启动创建的管理员账号
QNAP_ADMIN_PASSWORD: qnap1234 # 首次启动管理员密码,建议自行修改
QNAP_DEFAULT_MODE: lite # lite=实时监控;full=实时+历史记录
QNAP_HISTORY_RETENTION_DAYS: "30" # Full 模式历史数据保留天数
QNAP_RAW_RETENTION_HOURS: "24" # 原始高精度数据保留小时数
QNAP_SESSION_HOURS: "12" # 登录会话有效时间(小时)
QNAP_COOKIE_SECURE: "false" # HTTP 保持 false,HTTPS 可设为 true
QNAP_SHARE_SCAN_INTERVAL: "21600" # 共享文件夹扫描周期,单位秒
QNAP_DISK_SCAN_INTERVAL: "86400" # 磁盘完整信息扫描周期,单位秒
QNAP_DISK_STARTUP_RETRY_SECONDS: "60" # 启动时磁盘扫描失败重试间隔
QNAP_SHARE_STARTUP_RETRY_SECONDS: "30" # 启动时共享扫描失败重试间隔
QNAP_PROCESS_SAMPLE_INTERVAL: "60" # 高负载进程采样周期,单位秒
QNAP_PROCESS_TOP_N: "15" # 最多显示的高负载进程数量
QNAP_PROCESS_COMMAND_LIMIT: "220" # 进程命令行最大显示长度
QNAP_PCIE_INCLUDE_BDFS: "" # 强制加入监控的 PCIe BDF,默认自动识别
QNAP_PCIE_EXCLUDE_BDFS: "" # 排除指定 PCIe BDF,普通用户留空
QNAP_FAN_REFRESH_SECONDS: "10" # 风扇状态刷新周期
QNAP_FAN_HTTP_TIMEOUT: "2" # 风扇 HTTP 读取超时
QNAP_FAN_HAL_TIMEOUT: "3" # QNAP HAL 查询超时
QNAP_FAN_HAL_MAX_INDEX: "16" # 最大风扇索引探测数量
QNAP_FAN_HAL_REFRESH_SECONDS: "600" # HAL 风扇信息重新探测周期
logging:
driver: json-file
options:
max-size: "10m" # 单个日志文件最大 10MB
max-file: "3" # 最多保留 3 个日志文件
打开威联通的Container Station,创建新的应用程序。

使用一览
部署完毕后,浏览器输入NAS_IP:3300即可访问页面。密码为部署时所设。

其实也没多少可介绍的,所见即所得,等获取完硬件信息。

一张图放不完,下面还有硬盘、共享文件夹、进程。

朋友的TS-673A显卡也是能正常识别,参数也都没啥问题。

右上角的内容应该都挺容易理解。kiosk模式即为纯净显示,按ESC便可退出。

个人资料里可以设置用户、语言、时区之类。

因为主体还是基于Grafana,所以也具备插件之类的功能。

最后
项目的最终显示效果我俩都比较满意,所以选择分享出来。
缺点可能就是没那么高的灵活性。
有需要的朋友可以选择部署。感谢观看,本文完。
评论区