在创建部署后,有没有办法在.spec.template中添加标签?所以,我知道这可以做到
kubectl label deployment myDeployment myLabelKey=myLabelValue
但这只会将标签添加到.metadata.labels
。我想在.spec.template.metadata.labels
添加标签。
答案 0 :(得分:1)
这应该可以使用kubectl patch
命令。以下补丁文件将向spec.template.metadata.labels
属性添加新标签:
spec:
template:
metadata:
labels:
myLabelKey: myLabelValue
然后申请:
$ kubectl patch deployment myDeployment --patch "$(cat patchfile.yaml)"
或者,使用内联JSON而不是单独的文件:
$ kubectl patch deployment myDeployment --patch '{"spec": {"template": {"metadata": {"labels": {"myLabelKey": "myLabelValue}}}}}'
答案 1 :(得分:0)
@helmbert的解决方案是正确的,但是在myLabelValue之后缺少双引号。
$ kubectl patch deployment myDeployment --patch '{"spec": {"template": {"metadata": {"labels": {"myLabelKey": "myLabelValue"}}}}}'