Kubernetes:将YAML转换为JSON时出错:yaml:第12行:找不到预期的密钥

时间:2020-07-01 02:12:44

标签: kubernetes compiler-errors kubectl

我试图将ciao添加到我的Kubernetes单节点群集中,并且每次运行kubectl apply -f命令时,我总是遇到错误“将YAML转换为JSON时出错:YAML:第12行:找不到预期的错误键”。我查看了其他解决方案,但它们无济于事。任何帮助将不胜感激。

kind: Namespace
metadata:
  name: monitoring
---
apiVersion: v1
kind: Secret
metadata:
  name: ciao
  namespace: monitoring
data:
  BASIC_AUTH_USERNAME: YWRtaW4=
  BASIC_AUTH_PASSWORD: cGFzc3dvcmQ=
---
apiVersion: apps/v1
kind: Deployment
metadata:
  name: ciao
  namespace: monitoring
spec:
  replicas: 1
  template:
  metadata:
  selector:
      labels:
        app: ciao
    spec:
      containers:
      - image: brotandgames/ciao:latest
        imagePullPolicy: IfNotPresent
        name: ciao
        volumeMounts: # Emit if you do not have persistent volumes
        - mountPath: /app/db/sqlite/
          name: persistent-volume
          subPath: ciao
        ports:
        - containerPort: 3000
        resources:
          requests:
            memory: 256Mi
            cpu: 200m
          limits:
            memory: 512Mi
            cpu: 400m
        envFrom:
        - secretRef:
            name: ciao
---
apiVersion: v1
kind: Service
metadata:
  name: ciao
  namespace: monitoring
spec:
  ports:
    - port: 80
      targetPort: 3000
      protocol: TCP
  type: NodePort
  selector:
    app: ciao

1 个答案:

答案 0 :(得分:1)

看起来您的部署定义中有一个缩进。这应该起作用:

apiVersion: apps/v1
kind: Deployment
metadata:
  name: ciao
  namespace: monitoring
  labels:
    app: ciao
spec:
  replicas: 1
  selector:
    matchLabels:
      app: ciao
  template:
    metadata:
      labels:
        app: ciao
    spec:
      containers:
      - image: brotandgames/ciao:latest
        imagePullPolicy: IfNotPresent
        name: ciao
        volumeMounts: # Emit if you do not have persistent volumes
        - mountPath: /app/db/sqlite/
          name: persistent-volume
          subPath: ciao
        ports:
        - containerPort: 3000
        resources:
          requests:
            memory: 256Mi
            cpu: 200m
          limits:
            memory: 512Mi
            cpu: 400m
        envFrom:
        - secretRef:
            name: ciao

请记住,在此定义中,PV persistent-volume必须存在于您的群集/命名空间中。