文章目录
watchtower 简介
watchtower 可以定期检查本地所有的 docker 容器,当它们存在新版本时,自动进行更新。
简易使用命令
检查更新本地所有的 docker 容器,并在更新后自动清理旧版本的镜像
docker run --rm --name watchtower -v /var/run/docker.sock:/var/run/docker.sock containrrr/watchtower --cleanup --run-once
检查更新指定容器,并在更新后自动清理旧版本的镜像,只需要在命令后面加上容器名称,例如 vaultwarden
和 nginx
docker run --rm --name watchtower -v /var/run/docker.sock:/var/run/docker.sock containrrr/watchtower --cleanup --run-once vaultwarden nginx
定期检查更新
-
使用 Linux 系统的定时任务来检查更新所有容器,例如每 2 小时检查更新一次
0 */2 * * * root docker run --rm --name watchtower -v /var/run/docker.sock:/var/run/docker.sock containrrr/watchtower --cleanup --run-once
-
通过 Portainer 创建一个持续运行的 watchtower 容器来定期检查更新所有容器
version: "3" services: watchtower: image: containrrr/watchtower restart: always environment: WATCHTOWER_CLEANUP: "true" WATCHTOWER_POLL_INTERVAL: 7200 # 每 2 小时检查更新一次 volumes: - "/var/run/docker.sock:/var/run/docker.sock" # command: vaultwarden nginx 检查更新指定容器