如何创建没有映像的部署,然后添加新映像?

时间:2020-05-17 20:06:45

标签: kubernetes

我是k8的新手,我正在尝试学习如何设置部署。

我正在寻找一种创建没有任何图像的新部署的方法。随着时间的推移,我将添加新的(0个或更多)图像(并指定所需的状态)。由于我不知道部署将预先包含哪些映像,因此无法使用任何现有的配置文件。

有可能吗?如果是,怎么办?

  • 如果可能的话,命令行解决方案将是不错的选择。

1 个答案:

答案 0 :(得分:2)

如果您想启动一个Nginx实例,则可以

 $  kubectl run nginx --image=nginx

但是无法创建没有映像的任何部署。

$ kubectl run demo  --image=""
error: --image is required

如果要编辑现有部署,则可以运行

$ kubectl edit deployments <deployment-name> -n <namespace>

您还可以通过运行以下命令将带有新映像的容器修补到现有部署中

$ kubectl patch deployment <deployment-name> -p   '{"spec":{"template":{"spec":{"containers":[{"name":"myapp","image":"newimage"}]}}}}'

要替换部署中容器的映像,请运行

$ kubectl set image deployment/<deployment-name> <container-name>=<image>