使用QQ邮箱来提醒你NAS中的容器是否需要更新,Docker部署容器更新提醒服务『WUD』
哈喽小伙伴儿们好,我是Stark-C~
我记得之前教大家在NAS上部署Docker 容器自动更的服务Watchtower:
不过Watchtower虽好,也有弊端,就是它是只管更新,只要是检测到了我们部署的Docker容器中的镜像有最新版本它就给更新了,但是我们有些Docker容器中的镜像并不是说越新越好。比如说我在在部署Docker Compose项目的时候,里面会涉及到多个镜像之间的关联与依赖,贸然更新会打乱它们之间的关系造成项目的损坏。
所以对于我们普通用户来说,我们需要的只是一个容器镜像更新的提醒,至于更新的主动权在于我们自己,而不是程序。
如果说你的需求也是如此,那么今天分享的教程可能就是你需要的,它便是『WUD』。
关于WUD

🔺WUD的全名叫做“What's up Docker”,按照体育老师的说法,翻译成中文其实就是“Docker 怎么样了?”
So,这项目就是管这方面的问题的。当监控到我们主机上的 Docker 容器有新版本可用时就会通知我们,并让我们决定是否更新。

🔺这项目的运行机制如下:
WATCHERS:查询 Docker 主机以获取要监视的容器
REGISTRIES:查询 Docker 注册表以查找可用的更新
TRIGGERS:当有更新时执行操作
同时,它还支持多种通知方式的触发器,包括:Smtp、Apprise、Ifttt、Pushover、Slack、Telegram、Discord等。
所以,今天的教程就教大家怎么通过Smtp的方式,使用QQ邮箱作为通知方式的触发器,来为我们推送Docker容器的更新提醒。
如果你还不了解QQ邮箱的SMTP服务,我之前出过一期详细的介绍与科普:
WUD部署

🔺打开NAS的文件管理器,在 docker 目录中(威联通默认为Container文件夹),创建一个新文件夹【wud】用于配置文件的持久化存储。

🔺然后使用SSH终端工具连接到NAS之后先启用root模式(“ sudo -i ”),接着输入以下Docker run多行命令(请注意,张大妈编辑器会删掉每行命令后面的反斜杠)并回车即可:
docker run -d --name WUD --security-opt="no-new-privileges=true" --read-only=true
-v /var/run/docker.sock:/var/run/docker.sock:ro
-v /share/Container/wud:/store
-p 3000:3000
-e WUD_TRIGGER_SMTP_QQ_HOST=smtp.qq.com
-e WUD_TRIGGER_SMTP_QQ_PORT=587
-e WUD_TRIGGER_SMTP_QQ_USER=你的QQ邮箱地址
-e WUD_TRIGGER_SMTP_QQ_PASS=你的QQ邮箱授权码
-e WUD_TRIGGER_SMTP_QQ_FROM=你的QQ邮箱地址
-e WUD_TRIGGER_SMTP_QQ_TO=你的QQ邮箱地址
-e WUD_TRIGGER_SMTP_QQ_TLS_ENABLED=true
-e WUD_TRIGGER_SMTP_QQ_SIMPLETITLE="容器 $${name} 有可用更新"
-e WUD_TRIGGER_SMTP_QQ_SIMPLEBODY="容器 $${name} 可以从版本 $${local} 更新到版本 $${remote}"
fmartinou/whats-up-docker
为了便于项目后期的维护和管理,建议使用docker-compose的方式部署:
version: '3.9'
services:
whatsupdocker:
image: fmartinou/whats-up-docker
container_name: WUD
security_opt:
- no-new-privileges=true
read_only: true
volumes:
- /var/run/docker.sock:/var/run/docker.sock:ro
- /docker/wud:/store # 映射wud文件夹
ports:
- 3000:3000 # 端口不要冲突
environment:
- WUD_TRIGGER_SMTP_QQ_HOST=smtp.qq.com
- WUD_TRIGGER_SMTP_QQ_PORT=587
- WUD_TRIGGER_SMTP_QQ_USER=你的QQ邮箱地址
- WUD_TRIGGER_SMTP_QQ_PASS=你的QQ邮箱授权码
- WUD_TRIGGER_SMTP_QQ_FROM=你的QQ邮箱地址
- WUD_TRIGGER_SMTP_QQ_TO=你的QQ邮箱地址
- WUD_TRIGGER_SMTP_QQ_TLS_ENABLED=true
- WUD_TRIGGER_SMTP_QQ_SIMPLETITLE=容器 $${name} 有可用更新
- WUD_TRIGGER_SMTP_QQ_SIMPLEBODY=容器 $${name} 可以从版本 $${local} 更新到版本 $${remote}
以上代码需要根据提示自行修改即可。
WUD体验
打开方式和传统容器一样,直接在浏览器中输入 【http:// NAS的局域网IP:端口号】 即可。

🔺WUD没有中文可供选择,好在它的界面其实也够简单,显示的内容不多, 一般能认出字母的也能猜个大概意思。

🔺不过对于我这种23个英文字母都认不全的人,还是可以借助浏览器翻译插件来正常使用的。

🔺可以看到所有容器镜像的更新情况与否,有更新的会显示最新版本镜像(版本号)。

🔺同时,如果你在部署时候的环境变量没有问题,在Triggers里面就会显示你部署时候自己的QQ邮箱相关信息。
WUD部署起来还是挺简单的,如果你有需要,也可以用它来监控你NAS上的Docker容器是否有更新。
好了,以上就是今天给大家分享的内容,我是爱分享的Stark-C,如果今天的内容对你有帮助请记得收藏,顺便点点关注,咱们下期再见!谢谢大家~

校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案