有没有办法使用kubectl创建一个带有一个标签的名称空间?例如:
kubectl
kubectl create ns <newnamespace> label=appid:foo12
而不是使用kubectl apply -f <somefile>
kubectl apply -f <somefile>
wbgh16ku1#
这可以帮助您:
kubectl create namespace namespace_name kubectl label namespaces namespace_name labelname=value --overwrite=true
tez616oj2#
马上这样做是不可能的,请参阅kubectl help create ns手册.但有解决方案:您可以使用kubectl创建名称空间并立即使用kubectl label namespaces <newnamespace> label=appid:foo12标记它,或者您可以使用kubectl生成yaml,在其中添加标签:kubectl create namespace demo --dry-run=client -o yaml如果您真的非常渴望在一个命令中完成所有这些操作,那么可以修改JSON内联,例如
kubectl help create ns
kubectl label namespaces <newnamespace> label=appid:foo12
kubectl create namespace demo --dry-run=client -o yaml
kubectl create namespace demo --dry-run=client -o yaml | \ sed '/^metadata:/a\ \ labels: {"demo":"true"}' | kubectl apply -f -
vwoqyblh3#
在创建命名空间时还没有直接的方法来设置标签。首先,创建一个命名空间,然后给它加标签。在k8s版本“v1.20.15”之前,可以按如下方式添加标签:
**Create namespace and add label:** kubectl create namespace test kubectl label namespace test any_name=any_value kubectl label namespace test food=delicous
更多信息:
kubectl label namespaces -h
3条答案
按热度按时间wbgh16ku1#
这可以帮助您:
tez616oj2#
马上这样做是不可能的,请参阅
kubectl help create ns
手册.但有解决方案:您可以使用kubectl创建名称空间并立即使用kubectl label namespaces <newnamespace> label=appid:foo12
标记它,或者您可以使用kubectl生成yaml,在其中添加标签:kubectl create namespace demo --dry-run=client -o yaml
如果您真的非常渴望在一个命令中完成所有这些操作,那么可以修改JSON内联,例如
vwoqyblh3#
在创建命名空间时还没有直接的方法来设置标签。首先,创建一个命名空间,然后给它加标签。在k8s版本“v1.20.15”之前,可以按如下方式添加标签:
更多信息: