前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【Linux 系列】Watchtower - 自动更新 Docker 镜像与容器

【Linux 系列】Watchtower - 自动更新 Docker 镜像与容器

作者头像
框架师
发布2023-03-23 21:08:50
2K0
发布2023-03-23 21:08:50
举报
文章被收录于专栏:墨白的Java基地墨白的Java基地

介绍 Watchtower

Watchtower 是一个 Docker 容器的自动更新服务。当 Docker Hub 上的镜像被更新时,Watchtower 会检测这些变化并更新本地的 Docker 镜像和容器。

Watchtower 具有以下特点:

  • 使用简单:仅需一条命令即可启动 Watchtower;
  • 支持多种 Docker Registry:支持 Docker Hub、Amazon ECR、Google Container Registry 等;
  • 安全性高:支持使用 TLS 加密进行通信。

具体操作

安装 Watchtower

安装 Watchtower 非常简单。首先,需要在主机上安装 Docker。然后,使用以下命令下载并运行 Watchtower:

代码语言:javascript
复制
$ docker run -d --name watchtower \
-v /var/run/docker.sock:/var/run/docker.sock \
containrrr/watchtower

在此命令中,我们使用 docker run 命令启动 Watchtower 容器。--name参数指定了容器的名称,-v参数将主机上的 Docker 套接字映射到容器内部的 Docker 套接字,以便 Watchtower 能够监视 Docker 守护程序上的容器和镜像。最后,containrrr/watchtower参数指定要使用的 Docker 镜像。

配置 Watchtower

默认情况下,Watchtower 将监视所有容器,并在发现更新时自动更新它们。但是,您可能希望更改此行为以满足您的特定需求。可以使用以下环境变量配置 Watchtower:

  • WATCHTOWER_POLL_INTERVAL:指定 Watchtower 轮询 Docker Registry 以查找镜像更新的时间间隔(单位:秒)。默认值为 300 秒(5 分钟)。
  • WATCHTOWER_CLEANUP:指定 Watchtower 是否应删除已停止容器的标志。默认值为 false。
  • WATCHTOWER_INCLUDE_STOPPED:指定 Watchtower 是否应考虑已停止的容器。默认值为 false。
  • WATCHTOWER_LABEL_ENABLE:指定 Watchtower 是否应解析具有指定标签的容器。默认值为 false。
  • WATCHTOWER_LABEL_FILTER:指定 Watchtower 应解析具有哪些标签的容器。默认值为空。

例如,要将 Watchtower 配置为每 10 秒轮询 Docker Registry 以查找更新,并在更新时自动重启受影响的容器,请使用以下命令:

代码语言:javascript
复制
$ docker run -d --name watchtower \
-e WATCHTOWER_POLL_INTERVAL=10 \
-v /var/run/docker.sock:/var/run/docker.sock \
containrrr/watchtower

总结

Watchtower 是一个方便的自动化工具,可帮助您管理 Docker 镜像和容器。无需手动检查更新或重新启动容器,Watchtower 将自动执行这些任务。同时,Watchtower 也具有很高的安全性,因为它支持使用 TLS 加密进行通信。如果您正在使用 Docker 构建和管理容器化应用程序,那么 Watchtower 是一个必备的工具。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2022-12-19,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 介绍 Watchtower
  • 具体操作
    • 安装 Watchtower
      • 配置 Watchtower
      • 总结
      相关产品与服务
      容器服务
      腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档