helm/chart/templates/backend/deployment.yaml

69 lines
2.2 KiB
YAML

apiVersion: apps/v1
kind: Deployment
metadata:
name: backend-deployment
labels:
app: backend
spec:
replicas: {{ .Values.backend.replicas }}
selector:
matchLabels:
app: backend
template:
metadata:
labels:
app: backend
spec:
volumes:
- name: jwt
secret:
secretName: {{ .Values.backend.jwt.secretName | required }}
- name: kubeconfig
secret:
secretName: {{ .Values.backend.kubeconfig.secretName | required }}
containers:
- name: backend-pod
image: harbor.dinauer.dev/kubooboo/backend:41
resources:
requests:
memory: "256Mi"
cpu: "150m"
limits:
memory: "512Mi"
cpu: "1000m"
ports:
- containerPort: 8080
volumeMounts:
- name: jwt
mountPath: /etc/secrets
readOnly: true
- name: kubeconfig
mountPath: /etc/kubeconfig
readOnly: true
env:
- name: DB_USER
valueFrom:
secretKeyRef:
name: {{ .Values.backend.database.user.secretName | required }}
key: username
- name: DB_PASSWORD
valueFrom:
secretKeyRef:
name: {{ .Values.backend.database.user.secretName | required }}
key: password
- name: DB_HOST
value: {{ .Values.backend.database.host | required }}
- name: DB_PORT
value: {{ .Values.backend.database.port | required }}
- name: DB_DATABASE
value: {{ .Values.backend.database.database | required }}
- name: DB_SCHEMA
value: {{ .Values.backend.database.schema | required }}
- name: QUARKUS_HTTP_CORS_ORIGINS
value: "{{ .Values.url.schema }}://{{ .Values.url.host }},{{ .Values.url.wsSchema }}://{{ .Values.url.host }}"
- name: PRIVATE_KEY_LOCATION
value: /etc/secrets/PRIVATE_KEY
- name: PUBLIC_KEY_LOCATION
value: /etc/secrets/PUBLIC_KEY
- name: KUBECONFIG_LOCATION
value: /etc/kubeconfig/KUBECONFIG