自动更新 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
相关推荐
雪可问春风11 小时前
docker环境部署
运维·docker·容器
lwx91485211 小时前
Linux-Shell算术运算
linux·运维·服务器
翻斗包菜11 小时前
PostgreSQL 日常维护完全指南:从基础操作到高级运维
运维·数据库·postgresql
somi711 小时前
ARM-驱动-02-Linux 内核开发环境搭建与编译
linux·运维·arm开发
双份浓缩馥芮白11 小时前
【Docker】Linux 迁移 docker 目录(软链接)
linux·docker
海的透彻12 小时前
nginx启动进程对文件的权限掌控
运维·chrome·nginx
路溪非溪12 小时前
Linux驱动开发中的常用接口总结(一)
linux·运维·驱动开发
航Hang*12 小时前
第3章:Linux系统安全管理——第2节:部署代理服务
linux·运维·服务器·开发语言·笔记·系统安全
北方的流星12 小时前
华三网络设备的路由重定向配置
运维·网络·华三
河南博为智能科技有限公司12 小时前
蓄电池在线监测系统-守护数据中心安全防线
运维·边缘计算