当前位置:   article > 正文

docker搭建 Watchtower

docker搭建 Watchtower

Watchtower 是一个非常实用的工具,它自动监视你的 Docker 容器并在发现基础镜像被更新时自动重启容器,使用最新的镜像。这对于确保你的应用程序始终运行最新版本的镜像是非常有帮助的,尤其是在安全更新的情况下。

如何使用 Docker 搭建 Watchtower

首先,你需要在你的系统上安装 Docker。一旦安装好 Docker,你可以通过 Docker 命令行工具来运行 Watchtower 容器。

docker run -d \
  --name watchtower \
  -v /var/run/docker.sock:/var/run/docker.sock \
  containrrr/watchtower
  • 1
  • 2
  • 3
  • 4

这段命令基本上就是启动了一个 Watchtower 容器,让它能够访问 Docker 守护程序的 UNIX 套接字,从而管理其他容器。

Watchtower 参数详解

  • --interval <seconds>: 设置 Watchtower 轮询检查更新的时间间隔,默认是 300 秒。
  • --schedule "0 0 4 * * *": 使用 cron 表达式来代替轮询间隔,定义更具体的执行时间。
  • --no-pull: 禁止 Watchtower 拉取新的镜像。
  • --no-restart: 禁止 Watchtower 重启容器。
  • --cleanup: 删除旧版本的镜像。
  • --tlsverify: 使用 TLS 并验证 Docker 守护程序的 SSL 证书(如果你的 Docker 配置了 TLS)。
  • --label-enable: 通过标签过滤容器,只更新添加了 com.centurylinklabs.watchtower.enable=true 标签的容器。
  • -v /var/run/docker.sock:/var/run/docker.sock: 允许 Watchtower 访问 Docker 守护进程。

监视特定的容器

如果你只想监视特定的容器(比如 nginx),你可以在运行容器时添加一个标签,然后让 Watchtower 仅监视带有该标签的容器。

  1. 运行 nginx 容器时添加标签:
docker run -d --name nginx-container --label=com.centurylinklabs.watchtower.enable=true nginx
  • 1
  1. 运行 Watchtower 并启用标签过滤:
docker run -d \
  --name watchtower \
  -v /var/run/docker.sock:/var/run/docker.sock \
  containrrr/watchtower \
  --label-enable
  • 1
  • 2
  • 3
  • 4
  • 5

忽略特定的容器

如果你想让 Watchtower 忽略特定的容器(比如 drawio),可以通过给该容器添加一个特定的标签来实现:

  1. 运行 drawio 容器时添加标签以告诉 Watchtower 忽略它:
docker run -d --name drawio-container --label=com.centurylinklabs.watchtower.enable=false drawio
  • 1
  1. 确保 Watchtower 在标签模式下运行(如上所述,使用 --label-enable)。
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小丑西瓜9/article/detail/214546
推荐阅读
相关标签
  

闽ICP备14008679号