apiVersion: apps/v1 kind: Deployment metadata: name: {{ template "invidious.fullname" . }} labels: app: {{ template "invidious.name" . }} chart: "{{ .Chart.Name }}-{{ .Chart.Version }}" release: {{ .Release.Name }} spec: replicas: {{ .Values.replicaCount }} selector: matchLabels: app: {{ template "invidious.name" . }} release: {{ .Release.Name }} template: metadata: labels: app: {{ template "invidious.name" . }} chart: "{{ .Chart.Name }}-{{ .Chart.Version }}" release: {{ .Release.Name }} spec: securityContext: runAsUser: {{ .Values.securityContext.runAsUser }} runAsGroup: {{ .Values.securityContext.runAsGroup }} fsGroup: {{ .Values.securityContext.fsGroup }} initContainers: - name: wait-for-postgresql image: postgres args: - /bin/sh - -c - until pg_isready -h {{ .Values.config.db.host }} -p {{ .Values.config.db.port }} -U {{ .Values.config.db.user }}; do echo waiting for database; sleep 2; done; containers: - name: {{ .Chart.Name }} image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}" imagePullPolicy: {{ .Values.image.pullPolicy }} ports: - containerPort: 3000 env: - name: INVIDIOUS_CONFIG valueFrom: configMapKeyRef: key: INVIDIOUS_CONFIG name: {{ template "invidious.fullname" . }} securityContext: allowPrivilegeEscalation: {{ .Values.securityContext.allowPrivilegeEscalation }} capabilities: drop: - ALL resources: {{ toYaml .Values.resources | indent 10 }} readinessProbe: httpGet: port: 3000 path: / livenessProbe: httpGet: port: 3000 path: / initialDelaySeconds: 15 restartPolicy: Always