Files
helm-charts/charts/unifi-network-application/templates/deployment.yaml

153 lines
4.9 KiB
YAML

---
kind: Deployment
apiVersion: apps/v1
metadata:
name: {{ include "template.fullname" . }}-mongodb
labels:
{{- include "template.labels" . | nindent 4 }}
spec:
replicas: 1
selector:
matchLabels:
name: {{ include "template.fullname" . }}-mongodb
template:
metadata:
name: {{ include "template.fullname" . }}-mongodb
labels:
name: {{ include "template.fullname" . }}-mongodb
spec:
securityContext:
{{ .Values.mongodb.podSecurityContext | toYaml | nindent 8 }}
volumes:
- name: {{ include "template.fullname" . }}-mongodb-init-volume
configMap:
name: {{ include "template.fullname" . }}-mongodb-init-sh
- name: {{ include "template.fullname" . }}-mongodb-data-volume
persistentVolumeClaim:
claimName: {{ include "template.fullname" . }}-{{ default "db-claim" .Values.mongodb.persistence.claimSuffix }}
containers:
- name: mongodb
image: "{{ .Values.mongodb.image }}:{{ .Values.mongodb.imageTag }}"
args: ["--wiredTigerCacheSizeGB", "{{ .Values.mongodb.cacheSizeGB }}"]
env:
- name: MONGO_INITDB_ROOT_USERNAME
value: {{ .Values.mongodb.adminuser }}
- name: MONGO_INITDB_ROOT_PASSWORD
value: {{ .Values.mongodb.adminpassword }}
- name: MONGO_AUTHSOURCE
value: admin
- name: MONGO_USER
value: {{ .Values.mongodb.username }}
- name: MONGO_PASS
value: {{ .Values.mongodb.password }}
- name: MONGO_DBNAME
value: {{ .Values.mongodb.dbname }}
ports:
- name: 'mongo'
containerPort: 27017
protocol: TCP
volumeMounts:
- name: {{ include "template.fullname" . }}-mongodb-init-volume
mountPath: /docker-entrypoint-initdb.d/init-mongo.sh
- name: {{ include "template.fullname" . }}-mongodb-data-volume
mountPath: /data/db
---
kind: Deployment
apiVersion: apps/v1
metadata:
name: {{ include "template.fullname" . }}-app
labels:
{{- include "template.labels" . | nindent 4 }}
spec:
replicas: 1
selector:
matchLabels:
name: {{ include "template.fullname" . }}-app
template:
metadata:
name: {{ include "template.fullname" . }}-app
labels:
name: {{ include "template.fullname" . }}-app
spec:
volumes:
- name: {{ include "template.fullname" . }}-app-config-volume
persistentVolumeClaim:
claimName: {{ include "template.fullname" }}-{{ default "config-claim" .Values.persistence.claimSuffix }}
containers:
- name: {{ include "template.fullname" . }}-app
image: "{{ .Values.image.repository }}:{{ .Values.image.tag | default .Chart.AppVersion }}"
env:
- name: TZ
value: "Europe/Budapest"
- name: MEM_LIMIT
value: "1024"
- name: MEM_STARTUP
value: "1024"
- name: MONGO_HOST
value: {{ include "template.fullname" . }}-mongodb-service
- name: MONGO_PORT
value: "27017"
- name: MONGO_USER
value: {{ .Values.mongodb.username }}
- name: MONGO_PASS
value: {{ .Values.mongodb.password }}
- name: MONGO_DBNAME
value: {{ .Values.mongodb.dbname }}
ports:
- name: 'l2-discoverable'
containerPort: 1900
protocol: UDP
- name: 'ap-discovery'
containerPort: 10001
protocol: UDP
- name: 'stun'
containerPort: 3478
protocol: UDP
- name: 'syslog'
containerPort: 5514
protocol: UDP
- name: 'speed-test'
containerPort: 6789
protocol: TCP
- name: 'internal-comms'
containerPort: 8080
protocol: TCP
- name: 'https-web'
containerPort: 8443
protocol: TCP
- name: 'http-s-redirect'
containerPort: 8843
protocol: TCP
- name: 'http-redirect'
containerPort: 8880
protocol: TCP
volumeMounts:
- name: {{ include "template.fullname" . }}-app-config-volume
mountPath: /config
readinessProbe:
httpGet:
path: /status
port: 8080
periodSeconds: 10
failureThreshold: 1
livenessProbe:
httpGet:
path: /status
port: 8080
initialDelaySeconds: 60
periodSeconds: 30
failureThreshold: 5
resources:
{{- toYaml .Values.resources | nindent 12 }}