| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203 | --- apiVersion: v1kind: Servicemetadata:   labels:     app: redis  name: redisspec:   clusterIP: None  ports:    - name: redis      port: 6379      targetPort: 6379  selector:     app: redis---apiVersion: apps/v1beta1kind: Deploymentmetadata:  name: redis  labels:    app: redisspec:  selector:    matchLabels:      app: redis  replicas: 1  template:    metadata:      labels:        app: redis    spec:      containers:      - name: redis        image: redis:alpine        ports:        - containerPort: 6379          name: redis--- apiVersion: v1kind: Servicemetadata:   labels:     app: db  name: dbspec:   clusterIP: None  ports:     -       name: db      port: 5432      targetPort: 5432  selector:     app: db---apiVersion: apps/v1beta1kind: Deploymentmetadata:  name: db  # labels:  #   app: dbspec:  template:    metadata:      labels:        app: db    spec:      containers:        -           name: db          image: postgres:9.4          env:            - name: PGDATA              value: /var/lib/postgresql/data/pgdata          ports:            - containerPort: 5432              name: db          volumeMounts:            - name: db-data              mountPath: /var/lib/postgresql/data      volumes:        - name: db-data          persistentVolumeClaim:            claimName: postgres-pv-claim---apiVersion: v1kind: PersistentVolumeClaimmetadata:  name: postgres-pv-claimspec:  accessModes:    - ReadWriteOnce  resources:    requests:      storage: 1Gi---apiVersion: v1kind: Servicemetadata:  name: result  labels:    app: resultspec:  type: LoadBalancer  ports:    -       port: 5001      targetPort: 80      name: result  selector:    app: result  # clusterIP: None---apiVersion: apps/v1beta1kind: Deploymentmetadata:  name: result  labels:    app: resultspec:  replicas: 1  template:    metadata:      labels:        app: result    spec:      containers:      - name: result        image: dockersamples/examplevotingapp_result:before        ports:        - containerPort: 80          name: result---apiVersion: v1kind: Servicemetadata:  name: vote  labels:    apps: votespec:  type: LoadBalancer  ports:    - port: 5000      targetPort: 80      name: vote  selector:    app: vote  # clusterIP: None---apiVersion: apps/v1beta1kind: Deploymentmetadata:  name: vote  labels:    app: votespec:  replicas: 2  template:    metadata:      labels:        app: vote    spec:      containers:        - name: vote          image: dockersamples/examplevotingapp_vote:before          ports:            -               containerPort: 80              name: vote              --- apiVersion: v1kind: Servicemetadata:   labels:     apps: worker  name: workerspec:   clusterIP: None  selector:     app: worker--- apiVersion: apps/v1beta1kind: Deploymentmetadata:   labels:     app: worker  name: workerspec:   replicas: 1  template:     metadata:       labels:         app: worker    spec:       containers:         -           image: dockersamples/examplevotingapp_worker          name: worker
 |