k8s Deployment示例


定义一个Deployment

tomcat-deployment.yaml

apiVersion: apps/v1
kind: Deployment
metadata:
  name: frontend
  labels:
  	app: app-demo
spec:
  replicas: 1
  selector:
    matchLabels:
      tier: frontend
    matchExpressions:
      - {key: tier, operator: In, values: [frontend]}
  template:
    metadata:
      labels:
        app: app-demo
        tier: frontend
    spec:
      containers:
      - name: tomcat-demo
        image: kubeguide/tomcat-app:v1
        imagePullPolicy: IfNotPresent
        ports:
        - containerPort: 8080

相关解释

apiVersion: apps/v1					#API版本,可以通过kubectl api-versions查看
kind: Deployment					#资源类型,可通过kubectl api-resources查看
metadata							#资源元数据
metadata.name						#该资源的名称
metadata.labels						#定义资源的标签,此处定义了一个app=app-demo的标签
spec								#资源规格
spec.replicas						#Pod副本数量
spec.selector						#标签选择器,此处表示自己控制tier=frontend的Pod
spec.template						#Pod模板
spec.template.metadata				#Pod的元数据
spec.template.metadata.labels		#Pod的标签应该包含Deployment控制的标签
spec.template.spec					#Pod规格
spec.template.spec.containers		#容器配置,参考我写的Pod详解
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页