k8s-platform/charts/leantime/templates/deployment.yaml

73 lines
2 KiB
YAML

apiVersion: apps/v1
kind: Deployment
metadata:
name: leantime
namespace: {{ .Values.namespace }}
spec:
revisionHistoryLimit: 3
replicas: 1
selector:
matchLabels:
app: leantime
template:
metadata:
labels:
app: leantime
spec:
securityContext:
fsGroup: 1000
fsGroupChangePolicy: OnRootMismatch
nodeSelector:
{{ toYaml .Values.nodeSelector | indent 8 }}
containers:
- name: leantime
image: "{{ .Values.image.repository }}@{{ .Values.image.digest }}"
imagePullPolicy: IfNotPresent
ports:
- name: http
containerPort: 8080
env:
- name: LEAN_DB_HOST
value: {{ .Values.database.host | quote }}
- name: LEAN_DB_USER
value: {{ .Values.database.user | quote }}
- name: LEAN_DB_DATABASE
value: {{ .Values.database.name | quote }}
- name: LEAN_DB_PASSWORD
valueFrom:
secretKeyRef:
name: {{ .Values.database.secret }}
key: password
- name: LEAN_APP_URL
value: {{ .Values.app.url | quote }}
- name: LEAN_SESSION_SECURE
value: "true"
- name: LEAN_APP_DIR
value: "/services/studio/leantime"
volumeMounts:
- name: userfiles
mountPath: /var/www/html/userfiles
- name: public-userfiles
mountPath: /var/www/html/public/userfiles
- name: plugins
mountPath: /var/www/html/app/Plugins
- name: logs
mountPath: /var/www/html/storage/logs
volumes:
- name: userfiles
persistentVolumeClaim:
claimName: leantime-userfiles
- name: public-userfiles
persistentVolumeClaim:
claimName: leantime-public-userfiles
- name: plugins
persistentVolumeClaim:
claimName: leantime-plugins
- name: logs
emptyDir: {}