自动更新 Docker 镜像

Watchtower 会通过 Unix Socket 与 Docker 的守护进程 dockerd 通信,拉取最新的镜像,并与当前运行的进行比较。如果两者的 Hash 不同,则停止当前容器,并使用相同命令参数启动新容器。目前该项目由于维护者的经历不足,已归档停止维护。

基本用法

shell 复制代码
$ sudo docker run \
--detach \
--name watchtower \
--volume /var/run/docker.sock:/var/run/docker.sock \
containrrr/watchtower

手动触发检查镜像更新

在创建 watchtower 容器之后,通过会在 24 小时之后进行第一次更新检查;如果想要立刻更新,可以手动运行:

shell 复制代码
$ sudo docker exec watchtower /watchtower --run-once

配置 EMail 通知

shell 复制代码
$ sudo docker run \
--name watchtower \
--volume /var/run/docker.sock:/var/run/docker.sock \
--env WATCHTOWER_NOTIFICATIONS=email \
--env WATCHTOWER_NOTIFICATION_EMAIL_FROM=yewq@yewq.cn \
--env WATCHTOWER_NOTIFICATION_EMAIL_TO=yewq@yewq.cn \
--env WATCHTOWER_NOTIFICATION_EMAIL_SERVER=smtp.exmail.qq.com \
--env WATCHTOWER_NOTIFICATION_EMAIL_SERVER_PORT=465 \
--env WATCHTOWER_NOTIFICATION_EMAIL_SERVER_TLS=true \
--env WATCHTOWER_NOTIFICATION_EMAIL_SERVER_USER=yewq@yewq.cn \
--env WATCHTOWER_NOTIFICATION_EMAIL_SERVER_PASSWORD=password \
--detach \
containrrr/watchtower

参考资料

  1. 【文档】Watchtower
  2. 【源码】watchtower
相关推荐
szxinmai主板定制专家13 分钟前
电力设备RK3568/RK3576+FPGA,多系统混合部署Linux+RTOS RT-THREAD,强实时性
linux·运维·服务器·人工智能·嵌入式硬件·fpga开发
我是坑货1 小时前
Jenkins 构建失败排查记录:mvn -U 把新版依赖被远程旧版覆盖
运维·jenkins
L、2181 小时前
CANN调优工具链全景:从profiler到tensorboard的完整观测体系
linux·运维·服务器·深度学习
码点滴1 小时前
Workload 自动化进化论:从手动运维到 AI 驱动的 Kubernetes 智能管控
运维·人工智能·kubernetes·自动化·workload
darkdragonking1 小时前
Docker(五)OpenEuler22.03 安装docker ce、排坑
运维·docker·容器
j_xxx404_1 小时前
Linux进程信号捕捉与操作系统运行本质深度解析
linux·运维·服务器·开发语言·c++·人工智能·ai
eggrall1 小时前
Linux信号——保存信号
linux·运维·服务器
2501_920047031 小时前
firewalld的使用
linux·运维
孙高飞2 小时前
直播预告 - 周日晚 7 点半-AI 驱动 UI 自动化
运维·自动化
qq_196976172 小时前
硬核多语言办公方案:基于Gemini境像站的实时翻译与双语文档自动化生成管道(国内免费镜像实测)
运维·自动化