使用CoreOS实现Zero Downtime应用程序部署

时间:2014-05-06 05:38:14

标签: docker coreos

我有一个Docker容器,我想部署到CoreOS群集,该群集必须从git仓库下载我的应用程序。

让我们说app容器运行nginx / nodejs

我该如何更新?

如果我提交容器并启动它,这是第一次工作。但是第二次我必须用fleetctl来停止/启动容器,那么我显然会有停机时间。我应该启动从该容器派生的新容器吗?

2 个答案:

答案 0 :(得分:10)

以下是完全针对这种情况的完整演练:

http://coreos.com/blog/zero-downtime-frontend-deploys-vulcand.html

答案 1 :(得分:3)

您应该在容器/图像中烘焙应用程序代码,而不是从容器内的github下拉应用程序。您的容器应该在几秒钟内启动其服务。要实现零停机,您应该保持旧容器运行,直到新容器启动并准备好接受新连接。您可以通过将nginx分离到自己的容器中并使其始终保持运行来实现此目的。

相关问题