【问题标题】:Kubernetes - found invalid field spec ErrorKubernetes - 发现无效字段规范错误
【发布时间】:2018-03-27 18:39:15
【问题描述】:

尝试在 kubernetes 中创建 POD 时出现以下错误。

# kubectl create -f nginx-deployment-prod.yaml 
error: error validating "nginx-deployment-prod.yaml": error validating data: found invalid field spec for v1.ObjectMeta; if you choose to ignore these errors, turn validation off with --validate=false

YAML 文件如下:

apiVersion: extensions/v1beta1
kind: Deployment
metadata: 
  name: nginx-deployment-prod
spec: 
  replicas: 1
  template: 
    metadata: 
      labels: 
        app: nginx-deployment-prod
      spec: 
        containers: 
          - 
            image: "nginx:1.7.9"
            name: nginx-deployment-prod
            ports:
          - 
            containerPort: 80

使用 http://www.yamllint.com/ 检查 YAML 是否有效;请告诉我如何解决这个问题。

【问题讨论】:

标签: docker kubernetes yaml


【解决方案1】:

您在格式化 yaml 文件时遇到问题:spec 应与 metadata 处于同一级别。

正确的nginx-deployment-prod.yaml 是:

apiVersion: extensions/v1beta1
kind: Deployment
metadata: 
  name: nginx-deployment-prod
spec: 
  replicas: 1
  template: 
    metadata: 
      labels: 
        app: nginx-deployment-prod
    spec: 
      containers: 
        - name: nginx-deployment-prod
          image: "nginx:1.7.9"
          ports:
            - containerPort: 80

【讨论】:

    猜你喜欢
    • 2011-03-10
    • 2018-02-21
    • 1970-01-01
    • 1970-01-01
    • 2017-09-17
    • 2017-07-11
    • 1970-01-01
    • 2020-11-27
    • 1970-01-01
    相关资源
    最近更新 更多