使用Webhooks自动更新Docker容器


10

我创建了一个Github存储库和一个Docker存储库。两者可以很好地协同工作:当我将新版本的Dockerfile推送到Github时,会在Docker存储库中自动构建一个新映像。

现在,我希望在(重建)基础映像时自动更新正在运行的容器。

如何使用Docker repos webhooks实现它?


1
如果有一种不使用webhook就可以实现相同目的的“简便”(与这种方式一样简单)的方法,我也很感兴趣。:)
PJ Bergeron

Answers:


3

Century Link Labs团队开发了2个新的开源工具,可以使用Web挂钩更新正在运行的容器。

他们的第一个应用程序是Zodiac,它使用“推送”部署模型。它是基于Docker Compose构建的轻量级工具,可轻松部署和回滚dockerized应用程序。它保留所有部署的历史记录,还允许您回滚到先前的部署。

他们的第二个应用程序“ 守望台”使用“拉”式部署模型。该模型允许驻留在防火墙后面的Docker容器检测并更安全地进行更改,而无需暴露外部端口。

t望塔知道如何正确重新启动一组链接的容器。如果检测到一组链接的容器中的一个依赖项有更新,则Watchtower将以正确的顺序停止和启动所有容器,以便应用程序正确启动。

我与Century Link Labs没有任何隶属关系。

您可能想看看的另一个更简单的应用程序是Docker Puller



这些链接中的某些链接现在已断开,但GitHub项目仍然存在
Tony O'Hagan

0

还有一个更新的docker-image-puller

它直接连接到Docker的套接字,并使用Docker API更新正在运行的容器,这些容器使用您在Webhook中指定的映像。这很简单,将来可能会添加更多选项


-1

我找到了,但是我还没有尝试过:

https://medium.com/@iaincollins/docker-swarm-automated-deployment-cb477767dfcf这是一篇有关使用webhook通过docker hub部署容器的文章。

基本上,它告诉您可以使用一种工具(请检查下面的链接)来处理docker“机器”上的webhook。 https://github.com/iaincollins/docker-deploy-webhook


尽管此链接可以回答问题,但最好在此处包括答案的基本部分,并提供链接以供参考。如果链接的页面发生更改,仅链接的答案可能无效。
迈克尔·汉普顿

@MichaelHampton我认为我的回答会有所帮助,我添加了更多描述。
emj365 '18
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.