Skip to content

Commit a65fe27

Browse files
committed
Add Kubernetes manifests
1 parent b57f001 commit a65fe27

8 files changed

Lines changed: 127 additions & 0 deletions

File tree

manifests/backend/deployment.yaml

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
apiVersion: apps/v1
2+
kind: Deployment
3+
metadata:
4+
name: backend
5+
spec:
6+
replicas: 1
7+
selector:
8+
matchLabels:
9+
app: backend
10+
template:
11+
metadata:
12+
labels:
13+
app: backend
14+
spec:
15+
containers:
16+
- name: backend
17+
image: ghcr.io/aashiruu/devops-backend:latest
18+
ports:
19+
- containerPort: 5000

manifests/backend/service.yaml

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
apiVersion: v1
2+
kind: Service
3+
metadata:
4+
name: backend
5+
spec:
6+
selector:
7+
app: backend
8+
ports:
9+
- port: 5000
10+
targetPort: 5000
11+
type: ClusterIP

manifests/database/secret.yaml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
apiVersion: v1
2+
kind: Secret
3+
metadata:
4+
name: postgres-secret
5+
type: Opaque
6+
data:
7+
POSTGRES_PASSWORD: cG9zdGdyZXM= # base64 for "postgres"

manifests/database/service.yaml

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
apiVersion: v1
2+
kind: Service
3+
metadata:
4+
name: postgres
5+
spec:
6+
selector:
7+
app: postgres
8+
ports:
9+
- port: 5432
10+
targetPort: 5432
11+
clusterIP: None
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
apiVersion: apps/v1
2+
kind: StatefulSet
3+
metadata:
4+
name: postgres
5+
spec:
6+
serviceName: postgres
7+
replicas: 1
8+
selector:
9+
matchLabels:
10+
app: postgres
11+
template:
12+
metadata:
13+
labels:
14+
app: postgres
15+
spec:
16+
containers:
17+
- name: postgres
18+
image: postgres:15
19+
ports:
20+
- containerPort: 5432
21+
env:
22+
- name: POSTGRES_PASSWORD
23+
valueFrom:
24+
secretKeyRef:
25+
name: postgres-secret
26+
key: POSTGRES_PASSWORD

manifests/frontend/deployment.yaml

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
apiVersion: apps/v1
2+
kind: Deployment
3+
metadata:
4+
name: frontend
5+
spec:
6+
replicas: 1
7+
selector:
8+
matchLabels:
9+
app: frontend
10+
template:
11+
metadata:
12+
labels:
13+
app: frontend
14+
spec:
15+
containers:
16+
- name: frontend
17+
image: ghcr.io/aashiruu/devops-frontend:latest
18+
ports:
19+
- containerPort: 80

manifests/frontend/service.yaml

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
apiVersion: v1
2+
kind: Service
3+
metadata:
4+
name: frontend
5+
spec:
6+
selector:
7+
app: frontend
8+
ports:
9+
- port: 80
10+
targetPort: 80
11+
type: ClusterIP

manifests/ingress/ingress.yaml

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
apiVersion: networking.k8s.io/v1
2+
kind: Ingress
3+
metadata:
4+
name: devops-ingress
5+
spec:
6+
rules:
7+
- host: localhost
8+
http:
9+
paths:
10+
- path: /
11+
pathType: Prefix
12+
backend:
13+
service:
14+
name: frontend
15+
port:
16+
number: 80
17+
- path: /api
18+
pathType: Prefix
19+
backend:
20+
service:
21+
name: backend
22+
port:
23+
number: 5000

0 commit comments

Comments
 (0)