77 lines
1.9 KiB
YAML
77 lines
1.9 KiB
YAML
apiVersion: apps/v1
|
|
kind: Deployment
|
|
metadata:
|
|
name: backend-deployment
|
|
namespace: z2app
|
|
spec:
|
|
replicas: 1
|
|
selector:
|
|
matchLabels:
|
|
app: backend
|
|
template:
|
|
metadata:
|
|
labels:
|
|
app: backend
|
|
spec:
|
|
containers:
|
|
- name: backend
|
|
image: python:3.11-slim
|
|
command: ["/bin/sh", "-c"]
|
|
args:
|
|
- pip install flask psycopg2-binary && python /app/app.py
|
|
ports:
|
|
- containerPort: 5000
|
|
env:
|
|
- name: DB_HOST
|
|
value: postgres-service
|
|
- name: DB_PORT
|
|
value: "5432"
|
|
- name: DB_NAME
|
|
value: appdb
|
|
- name: DB_USER
|
|
value: appuser
|
|
- name: DB_PASSWORD
|
|
value: apppass
|
|
volumeMounts:
|
|
- name: backend-code
|
|
mountPath: /app/app.py
|
|
subPath: app.py
|
|
volumes:
|
|
- name: backend-code
|
|
configMap:
|
|
name: backend-code-config
|
|
---
|
|
apiVersion: apps/v1
|
|
kind: Deployment
|
|
metadata:
|
|
name: frontend-deployment
|
|
namespace: z2app
|
|
spec:
|
|
replicas: 1
|
|
selector:
|
|
matchLabels:
|
|
app: frontend
|
|
template:
|
|
metadata:
|
|
labels:
|
|
app: frontend
|
|
spec:
|
|
containers:
|
|
- name: frontend
|
|
image: nginx:alpine
|
|
ports:
|
|
- containerPort: 80
|
|
volumeMounts:
|
|
- name: frontend-html
|
|
mountPath: /usr/share/nginx/html/index.html
|
|
subPath: index.html
|
|
- name: frontend-nginx
|
|
mountPath: /etc/nginx/conf.d/default.conf
|
|
subPath: default.conf
|
|
volumes:
|
|
- name: frontend-html
|
|
configMap:
|
|
name: frontend-html-config
|
|
- name: frontend-nginx
|
|
configMap:
|
|
name: frontend-nginx-config |