开源&Docker 篇十六:报告!你的容器镜像该更新了——What's Up Docker

2024-01-17 09:58:09 19点赞 236收藏 20评论

前言

大家好,这里是可爱的Cherry,一个美丽冻人的日更美少女

求关注、求点赞、求转发~~求一键三连呀~~🧡🧡🧡💛💛💛💚💚💚

说到Docker容器监听服务,你肯定第一时间想到WatchTower对吧?Cherry曾经也发布过关于灯塔的一些部署和使用教程。

🔻以下是Docker容器可视化管理面板专题,有兴趣的朋友也可以看看。

报告!你的容器镜像该更新了——What's Up Docker但是今天呢,恭喜你猜错了,今天Cherry介绍另外一款容器监听工具——What's Up Docker(以下简称WUD),对,就是在标题里写的这名字。

报告!你的容器镜像该更新了——What's Up Docker

那么我们就开始吧! Dokcer,你肿么了。


系统介绍

一、WUD做什么工作?

🔻WUD 容器建立在以下三个步骤中进行工作,当 Docker 容器存在新版本时,WUD会通过多种多样的方式通知你,并让你按照自己的方式做出反应。

  1. WATCHERS:查询 Docker 主机以获取要监视的容器

  2. REGISTRIES:查询 Docker 注册表以查找可用更新

  3. TRIGGERS:在有可用更新时执行相应的操作

🔻以下是工作流程图,提供UI与API,并且重点关注通知方式,使用 Smtp、Apprise、Ifttt、Pushover、Slack、Telegram、Discord 等发送通知,对我们来说最通用的就是webhook。

报告!你的容器镜像该更新了——What's Up Docker

部署教程

一、SSH部署

❗【端口】:自定义对外端口,以23000为例

docker run -d --name wud -v /var/run/docker.sock:/var/run/docker.sock:ro -p 【端口】:3000 fmartinou/whats-up-docker

#

docker run -d --name wud -v /var/run/docker.sock:/var/run/docker.sock:ro -p 23000:3000 fmartinou/whats-up-docker

二、群晖部署

🔻建议使用计划任务执行复制以下代码使用

docker run -d --name wud

-v "/var/run/docker.sock:/var/run/docker.sock"

-p 23000:3000 #自定义端口

fmartinou/whats-up-docker


程序使用

一、自动监控镜像版本

该项目没有设置或控制面板所有的功能都是通过环境变量来实现的,因此首页内容也很简单,仅作为展示。

🔻项目首页,可以看到已经提示有3个容器可以更新镜像了。

报告!你的容器镜像该更新了——What's Up Docker

🔻点击左侧的容器按钮进入容器列表详情页,可以看到每一个容器镜像的最新版本号,该页包含功能如下:

  1. Update available:查看仅有更新的。

  2. WATCH NOW:手动刷新容器镜像版本。

报告!你的容器镜像该更新了——What's Up Docker

二、配置通知器

该项目支持Apprise、Http、Iftt、Kafka、Mqtt、Pushover、Slack、Smtp、TG、DISCORD等消息通知。较有意思的是,所有的配置都是通过环境变量来实现的,支持同时发送多个监控工具,并且通过自定义环境变量来实现。

其中,Http使用Json代码,而Json的格式是固定的,除非你修改代码,因此在微信、钉钉、gotify等项目中并不能很好的运用。

⭐⭐Cherry曾经写到两篇关于webhook使用的文章,有兴趣的朋友可以看一看。⭐⭐

🔻具体的指令可以查看官方文档。Triggers (fmartinou.github.io),以下介绍一下自定义的格式:

WUD_TRIGGER_{{trigger_type}}}_{trigger_name}_MODE

{{trigger_type}}}:表示发送类型,包括SMTP、HTTP、MQTT等

{trigger_name}}}:表示自定义名称,只要保持一致即可,比如webhook的我统一为bark,smtp的我统一为gmail

🔻通用内容,定义传送内容:

#标题

-e 'WUD_TRIGGER_SMTP_GMAIL_SIMPLETITLE=Container ${name} can be updated'

#内容

-e 'WUD_TRIGGER_SMTP_GMAIL_SIMPLEBODY=Container ${name} can be updated from version ${local} to version ${remote}'

🔻Webhook(HTTP):以bark的为例

bark服务地址:http://192.168.1.104:16009/a2dh7rS3dNXo7SLBMH5XEN/

#webhook地址

-e WUD_TRIGGER_HTTP_BARK_URL="http://192.168.1.104:16009/a2dh7rS3dNXo7SLBMH5XEN/"

#webhook方法,采用get

-e WUD_TRIGGER_HTTP_BARK_METHOD="GET"

🔻Webhook(HTTP):最终指令为

docker run -d --name wud -v /var/run/docker.sock:/var/run/docker.sock:ro -e TZ=Asia/Shanghai -e WUD_TRIGGER_HTTP_BARK_URL="http://192.168.1.104:16009/a2dh7rS3dNXo7SLBMH5XEN/" -e WUD_TRIGGER_HTTP_BARK_METHOD="GET" -e 'WUD_TRIGGER_HTTP_BARK_SIMPLEBODY=Container ${name} can be updated from version ${local} to version ${remote}' -p 23000:3000 fmartinou/whats-up-docker

🔻Smtp,以Gmail邮箱为例

-e WUD_TRIGGER_SMTP_GMAIL_HOST="smtp.gmail.com"

-e WUD_TRIGGER_SMTP_GMAIL_PORT="465"

-e WUD_TRIGGER_SMTP_GMAIL_USER="john.doe@gmail.com"

-e WUD_TRIGGER_SMTP_GMAIL_PASS="mysecretpass"

-e WUD_TRIGGER_SMTP_GMAIL_FROM="john.doe@gmail.com"

-e WUD_TRIGGER_SMTP_GMAIL_TO="jane.doe@gmail.com"

-e WUD_TRIGGER_SMTP_GMAIL_TLS_ENABLED="true"

三、其它配置

🔻设置Docker自动更新

-e "WUD_TRIGGER_DOCKER_EXAMPLE_PRUNE=true"

🔻更改镜像源

镜像源支持ACR、CUSTOM、ECR 、GCR 、GHCR、GITLAB、HOTIO 、HUB、LSCR、Quay等不同镜像库的cookie登录,防止被限流。具体文档可以看:Registries (fmartinou.github.io)

四、API接口

WUD允许第三方使用WUD的API,可以查看容器、删除容器、查看日志等。

报告!你的容器镜像该更新了——What's Up Docker

最后

生命在于折腾,容器在于稳定。实话实说,在折腾久了以后,Cherry并不喜欢频繁的更新容器,因为很多容器项目更新往往包含着环境变量、内部结构的变动,如果不明所以就将容器版本更新,很容易造成项目损坏。

因此本项目仅仅通过监控镜像版本,并予以通知,可以很大的程度上解决我们的困境,一边能及时知晓手上的docker是否更新了,另一边也能考虑周全是否更新。

虽然群晖DSM7.2已经包含了镜像更新提醒功能,但是我们依旧可以部署一些简单明了的工具来帮我们更好的管理容器、镜像。

该项目属于docker项目,所有nas均可以安装。


报告!你的容器镜像该更新了——What's Up Docker

欢迎朋友们评论区讨论留言。我会定期更新关注NAS使用方法、开源软件与Docker软件、游戏与生活相关内容,喜欢的朋友请关注、点赞、留言支持。

作者声明本文无利益相关,欢迎值友理性交流,和谐讨论~

展开 收起

ZSpace 极空间 私有云 Z4Pro 8G版 4盘位NAS存储(N97、8GB)

ZSpace 极空间 私有云 Z4Pro 8G版 4盘位NAS存储(N97、8GB)

2485.01元起

ZSpace 极空间 私有云 Z4Pro 性能版 NAS存储(N305、16GB)

ZSpace 极空间 私有云 Z4Pro 性能版 NAS存储(N305、16GB)

3499元起

Synology 群晖 DS224+ 双盘位NAS(赛扬J4125、2GB)

Synology 群晖 DS224+ 双盘位NAS(赛扬J4125、2GB)

2849元起

ZSpace 极空间 私有云 Z4Pro 16G版 4盘位NAS存储(N97、16GB)

ZSpace 极空间 私有云 Z4Pro 16G版 4盘位NAS存储(N97、16GB)

2799元起

ZSpace 极空间 私有云 Z423 旗舰版 8盘位NAS存储(锐龙R7-5825U、64GB)

ZSpace 极空间 私有云 Z423 旗舰版 8盘位NAS存储(锐龙R7-5825U、64GB)

5899元起

Synology 群晖 DS920+ 4盘位 NAS存储(J4125、4GB)

Synology 群晖 DS920+ 4盘位 NAS存储(J4125、4GB)

2190.84元起

Synology 群晖 DS220+ 2盘位NAS (赛扬J4025、2GB)

Synology 群晖 DS220+ 2盘位NAS (赛扬J4025、2GB)

2179元起

ZSpace 极空间 私有云Z2Pro 四核2盘位NAS家庭个人云网络存储服务器手机平板扩容适用iPhone15 水

ZSpace 极空间 私有云Z2Pro 四核2盘位NAS家庭个人云网络存储服务器手机平板扩容适用iPhone15 水

1299元起

ZSpace 极空间 私有云 T2 2盘位NAS存储(RK 3568、4GB)

ZSpace 极空间 私有云 T2 2盘位NAS存储(RK 3568、4GB)

1799元起

Synology 群晖 DS423+ 4盘位 NAS网络存储 (Intel四核 、无内置硬盘)

Synology 群晖 DS423+ 4盘位 NAS网络存储 (Intel四核 、无内置硬盘)

4099元起

ZSpace 极空间 私有云Q2C 2盘位 Nas网络存储服务器

ZSpace 极空间 私有云Q2C 2盘位 Nas网络存储服务器

899元起

ZSpace 极空间 私有云Z2Pro 四核2盘位NAS家庭个人云网络存储服务器 手机平板扩容适用iPhone15

ZSpace 极空间 私有云Z2Pro 四核2盘位NAS家庭个人云网络存储服务器 手机平板扩容适用iPhone15

1299元起

ZSpace 极空间 私有云Z4Pro 性能版 8核16G内存 四盘位Nas网络存储服务器家庭个人云珍

ZSpace 极空间 私有云Z4Pro 性能版 8核16G内存 四盘位Nas网络存储服务器家庭个人云珍

3499元起

ZSpace 极空间 私有云Q2C四核Nas网络存储服务器 家庭个人云网盘雪山白

ZSpace 极空间 私有云Q2C四核Nas网络存储服务器 家庭个人云网盘雪山白

899元起

Synology 群晖 DS1821+ 8盘位NAS (V1500B、4GB)

Synology 群晖 DS1821+ 8盘位NAS (V1500B、4GB)

8899元起

Synology 群晖 DS923+ NAS网络存储服务器 标准无硬盘

Synology 群晖 DS923+ NAS网络存储服务器 标准无硬盘

4899元起

文中相关商品

ZSpace 极空间 私有云 Z423 旗舰版 8盘位NAS存储(锐龙R7-5825U、64GB)
20评论

  • 精彩
  • 最新
提示信息

取消
确认
评论举报

相关好价推荐
查看更多好价

相关文章推荐

更多精彩文章
更多精彩文章

生活家,数码领域作者,电脑外设领域作者

发文累计获赞6883,内容被5.3万人收藏

微信公众号:可爱的小Cherry

关注 打赏
作者其他文章
最新文章 热门文章
236
扫一下,分享更方便,购买更轻松