✨ 自动化更新 Docker 应用:Watchtower 魔法🐳
自动化更新 Docker 应用:Watchtower 魔法✨🐳
原文链接:Updating Docker Apps automagically with Watchtower
作者:Jonas Scholz
译者:倔强青铜三
前言
大家好,我是倔强青铜三。是一名热情的软件工程师,我热衷于分享和传播IT技术,致力于通过我的知识和技能推动技术交流与创新,欢迎关注我,微信公众号:倔强青铜三。欢迎点赞、收藏、关注,一键三连!!!
引言
你是否曾在服务器上部署 Docker 应用,但每次将新版本的镜像推送到 Docker 注册表时都需要手动重启应用?如果你想要自动化这一重启过程,那么这篇博客文章正是为你准备的!我将向你展示如何使用 Watchtower 通过1个简单的命令来实现这一点!
本教程假设你已经有了一个自动构建并推送容器到注册表的流程。如果你还没有,我建议你阅读并遵循这个教程,或者简单地使用像 Sliplane 这样的现成解决方案。
让我们开始吧!🚀
设置
首先,运行你想要自动更新的容器。然后,运行以下命令,并替换 username
、password
和 container_to_watch
:
docker run -d \
--name watchtower \
-e REPO_USER=username \
-e REPO_PASS=password \
-v /var/run/docker.sock:/var/run/docker.sock \
containrrr/watchtower container_to_watch --debug --interval 300
这将运行 watchtower 容器(containrrr/watchtower
)在后台(-d
),将其命名为 watchtower,并传入你的 Docker 容器注册表的用户名和密码(-e REPO_USER=username -e REPO_PASS=password
)。
Watchtower 现在会定期检查你的 Docker 镜像是否已更改(在你的远程仓库中!),一旦更改就会拉取新版本。然后它会优雅地关闭你的旧容器,并使用相同的配置但带有新镜像重新启动它。默认的轮询间隔是24小时,如果你问我,这相当保守。你可以使用 --interval x
来更改轮询间隔,其中 x 是要等待的秒数。如果你想每5分钟检查一次更新,你会添加 --interval 300
。
结论
就是这样!现在你的 Docker 应用应该每次你推送新镜像到你的 Docker 仓库时都会更新。
最后感谢阅读!欢迎关注我,微信公众号:倔强青铜三
。欢迎点赞
、收藏
、关注
,一键三连!!!
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。