如何使用kubernetes

时间:2018-03-09 11:44:33

标签: deployment kubernetes

我有一个yaml文件,可用于创建pod。我正在使用仪表板,所以我可以简单地选择yaml文件,它将创建pods。 Pod将启动容器,容器将运行docker镜像。所以现在让我说我已经在docker镜像中做了一些更改,并希望再次部署它。为此,我将删除已经运行的pod并将上传yaml文件。

有没有可用的关键字删除已经运行的pod /部署并重新创建它,而不是再次删除和上传yaml文件。

由于

2 个答案:

答案 0 :(得分:2)

如果您正在使用它进行开发,那么您可能会使用

containers:
- image: my/app:dev
  imagePullPolicy: Always

有了这个,无论何时重新创建pod,您都将获得新的图像版本。

也就是说,你需要使用像Deployment这样的东西来自动重启pod,然后你可以kubectl delete my-pod-xxxxx-yyy擦除旧的,然后在几秒内获得新的,当前的。

为了刺激,请不要这样做。只需使用带标记的图像,然后将更改后的图像应用于kubectl apply -f my.yaml部署,或者最好使用Helm(但对于初学者来说这是一个更复杂的主题)

答案 1 :(得分:0)

我不记得我第一次看到此方法的StackOverflow问题,但这里又是一个问题:

kubectl --namespace thenamespace get pod thepod -o yaml | kubectl replace --save-config -f -

您可以使用所有k8s资源来做到这一点。