关于container:DIUN开源的镜像更新通知工具
咱们通常能够将一台或多台服务器作为Docker主机,应用容器跑一些开源的工具服务。而往往咱们不晓得该什么时候这个这些利用有了更新的版本,最近发现了一个开源的工具,能够查看主机上运行的容器的镜像是否有更新,并能够通过集成多种渠道发送更新告诉,这款工具就是 DIUN(Docker Image Update Notifier) 。 DUIN介绍DUIN是一款应用GO语言编写的命令行工具,能够本地运行,也能够通过容器运行(开发者提供了构建好的镜像 ),当监控的容器镜像在相应的注册表(Registry)中更新时,能够接管到相应的告诉。 DUIN反对多种监控配置(Providers): Docker - 剖析Docker主机上运行容器的镜像,并查看其更新Podman - 相似Docker,须要Podman以服务形式启动Kubernetes - 剖析Kubernetes集群中的Pods,查看pod应用的镜像Swarm - 剖析Swarm集群中服务应用的镜像Nomad - 相似Docker,剖析Nomad引擎运行的镜像Dockerfile - 剖析Dockerfile中援用的镜像File - yaml格局的配置文件,间接配置须要查看的镜像信息DUIN反对集成多种告诉渠道,例如 Discord, Slack,Matrix,Telegram 以及 Webhook 等。 DUIN应用示例这里将演示在Docker主机上应用Docker Compose来运行duin服务,并集成Slack,将告诉发送到相应的频道。 docker-compose.yml : services: diun: image: crazymax/diun:latest container_name: diun hostname: home200-diun command: serve volumes: - diundata:/data - "/var/run/docker.sock:/var/run/docker.sock" environment: - "TZ=Asia/Shanghai" - "LOG_LEVEL=info" - "LOG_JSON=false" - "DIUN_WATCH_WORKERS=20" - "DIUN_WATCH_SCHEDULE=0 */6 * * *" - "DIUN_WATCH_JITTER=30s" - "DIUN_PROVIDERS_DOCKER=true" - "DIUN_PROVIDERS_DOCKER_WATCHBYDEFAULT=true" - "DIUN_NOTIF_SLACK_WEBHOOKURL=https://hooks.slack.com/services/xxxxxxxxxxxxx" restart: on-failurevolumes: diundata:下面的环境变量中 ...