apiVersion: apps/v1 kind: Deployment metadata: name: vote spec: selector: matchLabels: service: vote template: metadata: labels: service: vote spec: containers: - name: vote image: ghcr.io/subicura/voting/vote env: - name: REDIS_HOST value: "redis" - name: REDIS_PORT value: "6379" livenessProbe: httpGet: path: / port: 80 readinessProbe: httpGet: path: / port: 80 ports: - containerPort: 80 protocol: TCP --- apiVersion: v1 kind: Service metadata: name: vote spec: type: NodePort ports: - port: 80 nodePort: 31000 protocol: TCP selector: service: vote --- apiVersion: apps/v1 kind: Deployment metadata: name: result spec: selector: matchLabels: service: result template: metadata: labels: service: result spec: containers: - name: result image: ghcr.io/subicura/voting/result env: - name: POSTGRES_HOST value: "db" - name: POSTGRES_PORT value: "5432" livenessProbe: httpGet: path: / port: 80 readinessProbe: httpGet: path: / port: 80 ports: - containerPort: 80 protocol: TCP --- apiVersion: v1 kind: Service metadata: name: result spec: type: NodePort ports: - port: 80 nodePort: 31001 protocol: TCP selector: service: result --- apiVersion: apps/v1 kind: Deployment metadata: name: worker spec: selector: matchLabels: service: worker template: metadata: labels: service: worker spec: containers: - name: worker image: ghcr.io/subicura/voting/worker env: - name: REDIS_HOST value: "redis" - name: REDIS_PORT value: "6379" - name: POSTGRES_HOST value: "db" - name: POSTGRES_PORT value: "5432" --- apiVersion: apps/v1 kind: Deployment metadata: name: redis spec: selector: matchLabels: service: redis template: metadata: labels: service: redis spec: containers: - name: redis image: redis ports: - containerPort: 6379 protocol: TCP --- apiVersion: v1 kind: Service metadata: name: redis spec: ports: - port: 6379 protocol: TCP selector: service: redis --- apiVersion: apps/v1 kind: Deployment metadata: name: db spec: selector: matchLabels: service: db template: metadata: labels: service: db spec: containers: - name: db image: postgres:9.4 env: - name: POSTGRES_USER value: "postgres" - name: POSTGRES_PASSWORD value: "postgres" ports: - containerPort: 5432 protocol: TCP --- apiVersion: v1 kind: Service metadata: name: db spec: ports: - port: 5432 protocol: TCP selector: service: db