我是k8的新手,我正在尝试学习如何设置部署。
我正在寻找一种创建没有任何图像的新部署的方法。随着时间的推移,我将添加新的(0个或更多)图像(并指定所需的状态)。由于我不知道部署将预先包含哪些映像,因此无法使用任何现有的配置文件。
有可能吗?如果是,怎么办?
答案 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>