我有一个Docker容器,我想部署到CoreOS集群,必须从git repo下载我的应用程序。
假设app容器运行nginx / nodejs
我该如何更新?
如果我提交容器并启动它,那将是第一次。但是第二次我必须用fleetctl停止/启动容器然后我显然会有停机时间。我应该启动从该容器派生的新容器吗?
我有一个Docker容器,我想部署到CoreOS集群,必须从git repo下载我的应用程序。
假设app容器运行nginx / nodejs
我该如何更新?
如果我提交容器并启动它,那将是第一次。但是第二次我必须用fleetctl停止/启动容器然后我显然会有停机时间。我应该启动从该容器派生的新容器吗?
以下是完全针对这种情况的完整演练:
http://coreos.com/blog/zero-downtime-frontend-deploys-vulcand.html
以下是完全针对这种情况的完整演练:
http://coreos.com/blog/zero-downtime-frontend-deploys-vulcand.html
您应该在容器/图像中烘焙应用程序代码,而不是从容器内的github下拉应用程序。您的容器应该在几秒钟内启动其服务。要实现零停机,您应该保持旧容器运行,直到新容器启动并准备好接受新连接。您可以通过将nginx分离到自己的容器中并使其始终保持运行来完成此操作。