zkt25/z2/deployment.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