a DNS-1123 label must consist of lower case alphanumeric characters or ‘-‘, and must start and end w

a DNS-1123 label must consist of lower case alphanumeric characters or '-', and must start and end with an alphanumeric character

报错信息

[root@master]# kubectl create -f zuizhong.yaml 
Error from server (Invalid): error when creating "zuizhong.yaml": Deployment.apps "mry" is invalid: spec.template.spec.containers[2].name: Invalid value: "mry_backend": a DNS-1123 label must consist of lower case alphanumeric characters or '-', and must start and end with an alphanumeric character (e.g. 'my-name',  or '123-abc', regex used for validation is '[a-z0-9]([-a-z0-9]*[a-z0-9])?')
Error from server (Invalid): error when creating "zuizhong.yaml": Service "mry-service" is invalid: spec.ports[2].name: Invalid value: "mry_backend": a DNS-1123 label must consist of lower case alphanumeric characters or '-', and must start and end with an alphanumeric character (e.g. 'my-name',  or '123-abc', regex used for validation is '[a-z0-9]([-a-z0-9]*[a-z0-9])?')

错误原因

kubernetes中对资源命名时注意不能使用下划线

样例内容

错误样例:

apiVersion: apps/v1
kind: Deployment
metadata:
  name: mry
  labels:
    mrn: mry
spec:
  replicas: 1
  selector:
    matchLabels:
      mrn: mry
  template:
    metadata:
      labels:
        mrn: mry
    spec:
      containers:
        - name: mry-redis
          image: redis:5.0.12
          imagePullPolicy: IfNotPresent
          ports:
            - containerPort: 6379
        - name: mry-nginx
          image: nginx:1.17.1
          imagePullPolicy: IfNotPresent
          ports:
            - containerPort: 80
        - name: mry_backend
          image: tomcat:8
          imagePullPolicy: IfNotPresent
          ports:
            - containerPort: 8080
          volumeMounts:
            - mountPath: /home/mrn/volumes/mry
              name: mry
      volumes:
      - name: mry
        hostPath:
          path: /home/mrn/volumes/mry

---
apiVersion: v1
kind: Service
metadata:
  name: mry-service
spec:
  ports:
    - port: 6379
      targetPort: 6379
      protocol: TCP
      name: mry-redis
      nodePort: 30010
    - port: 80
      targetPort: 80
      protocol: TCP
      name: mry-nginx
      nodePort: 30011
    - port: 8080
      targetPort: 8080
      protocol: TCP
      name: mry_backend
      nodePort: 30012
  selector:
    mrn: mry
  type: NodePort

修改成中划线:

apiVersion: apps/v1
kind: Deployment
metadata:
  name: mry
  labels:
    mrn: mry
spec:
  replicas: 1
  selector:
    matchLabels:
      mrn: mry
  template:
    metadata:
      labels:
        mrn: mry
    spec:
      containers:
        - name: mry-redis
          image: redis:5.0.12
          imagePullPolicy: IfNotPresent
          ports:
            - containerPort: 6379
        - name: mry-nginx
          image: nginx:1.17.1
          imagePullPolicy: IfNotPresent
          ports:
            - containerPort: 80
        - name: mry-backend
          image: tomcat:8
          imagePullPolicy: IfNotPresent
          ports:
            - containerPort: 8080
          volumeMounts:
            - mountPath: /home/mrn/volumes/mry
              name: mry
      volumes:
      - name: mry
        hostPath:
          path: /home/mrn/volumes/mry

---
apiVersion: v1
kind: Service
metadata:
  name: mry-service
spec:
  ports:
    - port: 6379
      targetPort: 6379
      protocol: TCP
      name: mry-redis
      nodePort: 30010
    - port: 80
      targetPort: 80
      protocol: TCP
      name: mry-nginx
      nodePort: 30011
    - port: 8080
      targetPort: 8080
      protocol: TCP
      name: mry-backend
      nodePort: 30012
  selector:
    mrn: mry
  type: NodePort
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值