Docker镜像监控神器Diun自动更新通知,NAS一键部署教程。帕斯内网穿透远程管理,再也不错过重要更新!
作者
小编
发布时间

项目介绍
Diun(Docker Image Update Notifier)是一个用 Go 语言编写的 CLI 应用程序,专门用于监控 Docker 镜像更新并发送通知。当 Docker 注册表中的镜像有新版本时,Diun 会自动检测并通过多种方式通知用户,让你第一时间了解容器镜像的更新情况。
这个工具特别适合运维人员和开发者使用,可以帮助你及时了解正在使用的 Docker 镜像是否有安全更新或功能更新,确保系统的安全性和稳定性。Diun 支持多种通知方式,包括邮件、Telegram、Slack、Webhook 等,并且可以监控多种容器编排平台,如 Docker、Kubernetes、Swarm 等。
项目具有以下特色功能:
- 支持监控 Docker 仓库并报告新标签 - 内置定时任务,可自定义检查频率 - 支持正则表达式过滤标签 - 多种通知方式:Gotify、邮件、Slack、Telegram 等 - 支持 Docker、Kubernetes、Swarm、Nomad 等多种容器平台 - 工作池并行分析,提高效率 - 健康检查支持
项目地址:点我跳转
部署安装
如需在外也打开项目需要配置内网穿透使用,点击前往 帕斯内网穿透,先注册好账号备用。
--- 下面是 docker-compose 的模版
复制下列的配置文件
1name: diun23services:4 diun:5 image: crazymax/diun:latest6 command: serve7 volumes:8 - "./data:/data"9 - "/var/run/docker.sock:/var/run/docker.sock"10 environment:11 - "TZ=Asia/Shanghai"12 - "DIUN_WATCH_WORKERS=20"13 - "DIUN_WATCH_SCHEDULE=0 */6 * * *"14 - "DIUN_WATCH_JITTER=30s"15 - "DIUN_PROVIDERS_DOCKER=true"16 labels:17 - "diun.enable=true"18 restart: always
打开飞牛 NAS 或其他的 NAS 设备

项目名称可以随便填,点击创建 docker-compose.yml

点击 Compose -> 新建项目
这里的配置文件已经是开箱即用的,主要参数说明:
- DIUN_WATCH_SCHEDULE=0 */6 * * *:每6小时检查一次镜像更新 - DIUN_WATCH_WORKERS=20:并发工作线程数 - DIUN_PROVIDERS_DOCKER=true:启用 Docker 提供者
如果需要配置通知功能,可以添加相应的环境变量,比如 Telegram 通知:
1DIUN_NOTIF_TELEGRAM_TOKEN=你的机器人token2DIUN_NOTIF_TELEGRAM_CHATIDS=你的聊天ID
--- 下面是 docker 的模版
打开飞牛 NAS 或其他的 NAS 设备 点击本地镜像-添加镜像-从 URL 添加。这一步先添加 docker 镜像

镜像填 crazymax/diun:latest 等待下载完成后点击启动按钮启动容器

勾选开机自动启动后下一步,端口设置这里。Diun 是一个后台服务,不需要映射端口,如果需要健康检查可以映射 8080 端口。
存储位置这里,需要创建一个文件夹映射到 /data 目录用于存储数据库文件,同时需要映射 Docker socket:
- 容器路径:/data -> 本地路径:/你的路径/diun/data - 容器路径:/var/run/docker.sock -> 本地路径:/var/run/docker.sock
环境变量设置:必须设置
- TZ:时区设置,建议设置为 Asia/Shanghai - DIUN_PROVIDERS_DOCKER:启用 Docker 提供者,设置为 true
选择设置,可以不填:
- DIUN_WATCH_SCHEDULE:检查计划,默认 0 */6 * * *(每6小时) - DIUN_WATCH_WORKERS:工作线程数,默认 20 - DIUN_WATCH_JITTER:随机延迟,默认 30s
通知相关环境变量(可选):
- DIUN_NOTIF_TELEGRAM_TOKEN:Telegram 机器人 Token - DIUN_NOTIF_TELEGRAM_CHATIDS:Telegram 聊天 ID
其他的都不用填写,直接下一步启动就好了。
创建成功后 Diun 会在后台运行,开始监控你的 Docker 镜像更新情况。你可以通过查看容器日志来确认运行状态。
穿透公网
由于 Diun 是一个后台监控服务,通常不需要通过公网访问。如果需要远程管理或查看日志,可以通过以下方式配置内网穿透:
打开帕斯内网穿透控制台,点击隧道管理-隧道列表

点击创建新隧道
隧道节点可以随便选,一般选个负载低的就可以

接下来填写信息,隧道名称可以随便填写
本地 IP 默认就可以
传输协议可以选择 TCP 也可以选择 HTTP/HTTPS
如果你启用了健康检查端口(8080),可以映射该端口用于远程监控
本地端口填 8080(如果你映射了健康检查端口)
远程端口可以留空也可以自定义

填写完毕点击确定
点击刚才创建好的隧道,点击获取配置文件

回到飞牛 NAS,点击应用中心下载 frpc 客户端

打开后粘贴刚才复制的配置文件,点击确定即可
复制帕斯内网穿透控制台的访问 IP 和端口
可以看到已经正常穿透成功了
本篇教程结束