Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/templates/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Templates 有没有办法通过模板将imagePullSecrets添加到默认ServiceAccount?_Templates_Kubernetes_Openshift - Fatal编程技术网

Templates 有没有办法通过模板将imagePullSecrets添加到默认ServiceAccount?

Templates 有没有办法通过模板将imagePullSecrets添加到默认ServiceAccount?,templates,kubernetes,openshift,Templates,Kubernetes,Openshift,我必须将参数化机密添加到默认ServiceAccount。 我尝试将默认ServiceAccount作为对象添加到模板中,但这似乎没有任何作用 或者我应该创建一个新的SA注入这些秘密并在DC中使用useServiceAccount:newSA引用它吗 谢谢 评论中提到的@user6242207 我最终使用的是用模板创建一个新的服务帐户,添加我需要的秘密,并将服务帐户链接到所有需要它的DC 为了澄清,库伯内特斯一步一步地描述了一切 1.创建一个imagePullSecret 创建imagePul

我必须将参数化机密添加到默认ServiceAccount。 我尝试将默认ServiceAccount作为对象添加到模板中,但这似乎没有任何作用

或者我应该创建一个新的SA注入这些秘密并在DC中使用useServiceAccount:newSA引用它吗


谢谢

评论中提到的@user6242207


我最终使用的是用模板创建一个新的服务帐户,添加我需要的秘密,并将服务帐户链接到所有需要它的DC


为了澄清,库伯内特斯一步一步地描述了一切

1.创建一个imagePullSecret

创建imagePullSecret,如Pod上的中所述

验证它是否已创建

kubectl get secrets myregistrykey
2.将镜像拉秘密添加到服务帐户

修改命名空间的默认服务帐户以将此机密用作imagePullSecret

您可以改为使用kubectl edit,或手动编辑YAML清单,如下所示:

3.您还可以验证结果

现在,当在当前命名空间中使用默认ServiceAccount创建新Pod时,新Pod将自动设置其spec.imagePullSecrets字段:

输出应为:

myregistrykey


如果您使用Open Shift,那么这可能会更有用。

您所说的
是什么意思?我尝试将默认ServiceAccount作为对象添加到模板中,但似乎没有任何作用。
?库伯内特斯说,你想实现什么,你试过了吗?简言之,您必须使用docker注册表创建密码,并使用您的密码名称修补您的默认服务帐户。我没有添加密码,所以在您将密码添加到默认服务帐户后,它会工作吗?我注意到你使用了openshift,这样会更有用。我最终使用的是用模板创建一个新的SA,添加我需要的秘密,并将SA链接到所有需要它的DC。谢谢你!
kubectl patch serviceaccount default -p '{"imagePullSecrets": [{"name": "myregistrykey"}]}'
kubectl get serviceaccounts default -o yaml > ./sa.yaml
kubectl run nginx --image=nginx --restart=Never
kubectl get pod nginx -o=jsonpath='{.spec.imagePullSecrets[0].name}{"\n"}'
myregistrykey