有没有办法告诉kubernetes更新你的容器?

我有一个kubernetes集群,我想知道如何(最佳实践)来更新容器。 我知道这个想法是拆除旧的容器,并提出新的容器,但是有一个我可以使用的单线,我必须删除复制控制器或pod(s),然后旋转新的(容器或副本控制器)? 有了这个我正在使用一个自我托pipe的私人图书馆,我知道我必须从Dockerfile和推到无论如何,这个我可以自动化吞(或任何其他生成工具),我可以自动化kubernetes更新/拆除和向上?

Kubectl可以为您自动执行滚动更新的过程。 看看这里的文档: https : //github.com/GoogleCloudPlatform/kubernetes/blob/master/docs/kubectl_rolling-update.md

运行Docker image bar:1.0到image bar:2.0的现有复制控制器foo滚动更新可以像运行kubectl rolling-update foo --image=bar:2.0一样简单。

find他们在Kubernetes文档中提到的更新: https : //github.com/GoogleCloudPlatform/kubernetes/blob/master/docs/replication-controller.md#rolling-updates 。 希望它是更自动的,但它的工作原理。

编辑1

为了实现自动化,我find了https://www.npmjs.com/package/node-kubernetes-client ,因为我已经使用一个节点进程自动完成了剩余的构build和部署,所以这将非常有效。

OpenShift Origin项目( https://github.com/openshift/origin )运行一个embedded式Kubernetes集群,但是如果您不想推出自己的解决scheme,则会在集群上提供自动化的构build和部署工作stream程。

我build议看看这里的例子: https : //github.com/openshift/origin/tree/master/examples/sample-app

在将来,部分构build和部署钩子可能会向上游移动到Kubernetes项目中,但这将成为部署解决scheme如何构build在Kubernetes之上的一个很好的例子。