侧边栏壁纸
博主头像
羊刀仙的部落格 博主等级

很有力量。

  • 累计撰写 299 篇文章
  • 累计创建 60 个标签
  • 累计收到 14 条评论

目 录CONTENT

文章目录

一个Docker搞定 NAS 全硬件监控:CPU、硬盘、显卡专业监控大屏~

羊刀仙
2026-08-04 / 0 评论 / 0 点赞 / 25 阅读 / 0 字 / 正在检测是否收录...
温馨提示:
部分素材来自网络,若不小心影响到您的利益,请联系我们删除。
GW树洞

高速稳定 · 海外专线

  • 自用推荐
  • 90天使用时长
  • 70+ 节点分布
  • IEPL专线 油管4K无压力
  • 全平台客户端
  • 不限制在线设备
立即注册

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

截屏2026-08-04 09.35.33.png

不过好看归好看,搭建过程也是真的折腾。这两天回头翻以前写的文章,忍不住感叹一句:当时的自己,居然能这么有耐心。

本篇再来分享一个简单,但是效果非常不错的Docker部署监控面板!!!CPU、风扇、显卡、硬盘等等,基本想到的常用硬件监控都在里面了。

截屏2026-08-03 16.42.39.png

项目介绍

站在巨人的肩膀上。这个项目最初由 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,创建新的应用程序。

截屏2026-08-04 10.42.46.png

使用一览

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

截屏2026-08-03 16.41.50.png

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

截屏2026-08-03 16.42.39.png

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

截屏2026-08-03 16.43.49.png

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

ef830dd94fb2a7ceb0cc01bacb6dc80d.png

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

截屏2026-08-03 16.46.22.png

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

截屏2026-08-03 16.45.40.png

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

截屏2026-08-04 10.53.56.png

最后

项目的最终显示效果我俩都比较满意,所以选择分享出来。

缺点可能就是没那么高的灵活性。

有需要的朋友可以选择部署。感谢观看,本文完。

0

评论区