vote app
263
Access Ports
vote-app-svc: 5004
result-app-svc: 5003
Access Paths
vote-svc: ip:5004
result-svc: ip:5003
vote-container: ip:8080
result-container: ip:8081
$ docker compose up -d
docker-compose.yaml
version: '3'
services:
db:
image: postgres:15-alpine
environment:
- POSTGRES_USER=postgres
- POSTGRES_PASSWORD=postgres
redis:
image: redis:alpine
vote-app:
image: michaelkedey/vote:vote-app
ports:
- "8080:80"
depends_on:
- redis
result-app:
image: michaelkedey/vote:result-app
ports:
- "8081:80"
depends_on:
- db
worker:
image: dockersamples/examplevotingapp_worker
depends_on:
- vote-app
- result-app
$ kubectl apply -f vote-app.yaml
vote-app.yaml
apiVersion: apps/v1
kind: Deployment
metadata:
labels:
app: db
name: db
spec:
replicas: 1
selector:
matchLabels:
app: db
template:
metadata:
labels:
app: db
spec:
containers:
- image: postgres:15-alpine
name: postgres
env:
- name: POSTGRES_USER
value: postgres
- name: POSTGRES_PASSWORD
value: postgres
ports:
- containerPort: 5432
name: postgres
volumeMounts:
- mountPath: /var/lib/postgresql/data
name: db-data
volumes:
- name: db-data
emptyDir: {}
---
apiVersion: apps/v1
kind: Deployment
metadata:
labels:
app: redis
name: redis
spec:
replicas: 1
selector:
matchLabels:
app: redis
template:
metadata:
labels:
app: redis
spec:
containers:
- image: redis:alpine
name: redis
ports:
- containerPort: 6379
name: redis
volumeMounts:
- mountPath: /data
name: redis-data
volumes:
- name: redis-data
emptyDir: {}
---
apiVersion: apps/v1
kind: Deployment
metadata:
labels:
app: result
name: result
spec:
replicas: 1
selector:
matchLabels:
app: result
template:
metadata:
labels:
app: result
spec:
containers:
- image: michaelkedey/vote:result-app
name: result
ports:
- containerPort: 80
name: result
---
apiVersion: apps/v1
kind: Deployment
metadata:
labels:
app: vote
name: vote
spec:
replicas: 1
selector:
matchLabels:
app: vote
template:
metadata:
labels:
app: vote
spec:
containers:
- image: michaelkedey/vote:vote-app
name: vote
ports:
- containerPort: 80
name: vote
---
apiVersion: apps/v1
kind: Deployment
metadata:
labels:
app: worker
name: worker
spec:
replicas: 1
selector:
matchLabels:
app: worker
template:
metadata:
labels:
app: worker
spec:
containers:
- image: dockersamples/examplevotingapp_worker
name: worker
---
apiVersion: v1
kind: Service
metadata:
labels:
app: db
name: db
spec:
type: ClusterIP
ports:
- name: "db-service"
port: 5432
targetPort: 5432
selector:
app: db
---
apiVersion: v1
kind: Service
metadata:
labels:
app: redis
name: redis
spec:
type: ClusterIP
ports:
- name: "redis-service"
port: 6379
targetPort: 6379
selector:
app: redis
---
apiVersion: v1
kind: Service
metadata:
labels:
app: result
name: result
spec:
type: NodePort
ports:
- name: "result-service"
port: 5003
targetPort: 80
nodePort: 31003
selector:
app: result
---
apiVersion: v1
kind: Service
metadata:
labels:
app: vote
name: vote
spec:
type: NodePort
ports:
- name: "vote-service"
port: 5004
targetPort: 80
nodePort: 31004
selector:
app: vote
Content type
Image
Digest
sha256:928bc4429…
Size
52.8 MB
Last updated
over 2 years ago
docker pull michaelkedey/vote