Kubernetes imagePullSecrets无法使用种类部署

Kubernetes imagePullSecrets无法使用种类部署,kubernetes,Kubernetes,我正准备创建一个包含3个副本的部署,它将从私有注册表中提取映像。我已将凭据存储在机密中,并在部署文件中使用imagePullSecrets。我在部署它时遇到以下错误 错误:验证“private reg pod.yaml”时出错:验证数据时出错:[ValidationError(Deployment.spec):io.k8s.api.apps.v1.DeploymentSpec中未知字段“containers”,io.k8s.api.apps.v1.DeploymentSpec中未知字段“imag

我正准备创建一个包含3个副本的部署,它将从私有注册表中提取映像。我已将凭据存储在机密中,并在部署文件中使用imagePullSecrets。我在部署它时遇到以下错误

错误:验证“private reg pod.yaml”时出错:验证数据时出错:[ValidationError(Deployment.spec):io.k8s.api.apps.v1.DeploymentSpec中未知字段“containers”,io.k8s.api.apps.v1.DeploymentSpec中未知字段“imagePullSecrets”,ValidationError(Deployment.spec):缺少必需字段“selector”在io.k8s.api.apps.v1.DeploymentSpec中,ValidationError(Deployment.spec):io.k8s.api.apps.v1.DeploymentSpec中缺少必填字段“模板];如果选择忽略这些错误,请使用--validate=false关闭验证

有什么帮助吗

下面是我的部署文件:

apiVersion: extensions/v1beta1
kind: Deployment
metadata:
  name: test-pod-deployment
  labels:
    app: test-pod
spec:
  replicas: 3
  selector:
    matchLabels:
      app: test-pod
  template:
    metadata:
      labels:
        app: test-pod
    spec:
      containers:
      - name: test-pod
    image: <private-registry>
  imagePullSecrets:
  - name: regcred
apiVersion:extensions/v1beta1
种类:部署
元数据:
名称:测试吊舱部署
标签:
应用程序:测试吊舱
规格:
副本:3份
选择器:
火柴标签:
应用程序:测试吊舱
模板:
元数据:
标签:
应用程序:测试吊舱
规格:
容器:
-名称:测试吊舱
图片:
你的秘密:
-姓名:regcred
谢谢,
Sundar

图像部分应放置在容器规格中。ImagePullSecret应放在spec部分,以便正确的yaml文件如下所示(请注意缩进):

apiVersion:extensions/v1beta1
种类:部署
元数据:
名称:测试吊舱部署
标签:
应用程序:测试吊舱
规格:
副本:3份
选择器:
火柴标签:
应用程序:测试吊舱
模板:
元数据:
标签:
应用程序:测试吊舱
规格:
容器:
-名称:测试吊舱
图片:
你的秘密:
-姓名:regcred

请确保您已经创建了该秘密,然后请尝试按以下方式创建

apiVersion:extensions/v1beta1
种类:部署
元数据:
名称:测试吊舱部署
标签:
应用程序:测试吊舱
规格:
副本:3份
选择器:
火柴标签:
应用程序:测试吊舱
模板:
元数据:
标签:
应用程序:测试吊舱
规格:
容器:
-名称:测试吊舱
图片:nginx
你的秘密:

-名称:regcred
kubernetes部署中非常常见的问题

从Kubernetes部署文件中的私有存储库中提取映像的有效格式为:

spec:
  imagePullSecrets:
  - name: <your secret name>    
  containers:
spec:
你的秘密:
-姓名:
容器:

我尝试了上述方法。正在创建部署,但POD无法读取机密。形象使我们失败。下面是我的yaml文件。apiVersion:extensions/v1beta1种类:部署元数据:名称:测试盒部署标签:应用程序:测试盒规范:副本:3选择器:匹配标签:应用程序:测试盒模板:元数据:标签:应用程序:测试盒规范:容器:-名称:测试盒映像:imagePullSecrets:-名称:regcredWarning失败5m(x3超过6m)kubelet,aks-agentpool-35896074-0未能提取图像“未经授权:需要身份验证]很抱歉,我解决了您的问题,即错误的配置文件导致您粘贴的错误。如果你能接受我的回答,我将不胜感激。另外,在查看堆栈溢出规则时,您应该创建一个新问题,描述与身份验证失败和kubernetes机密相关的问题。@Sun您解决了问题吗?我也有同样的问题
spec:
  imagePullSecrets:
  - name: <your secret name>    
  containers: