apiVersion: apps/v1 kind: StatefulSet metadata: name: {{ .Chart.Name }}-{{ .Release.Name }}-statefulset namespace: {{ .Release.Namespace }} labels: {{ range .Values.Labels }} {{ .name }}: {{ .value }} {{ end }} spec: replicas: {{ .Values.replicas }} minReadySeconds: {{ .Values.minReadySeconds }} selector: matchLabels: {{ range .Values.Labels }} {{ .name }}: {{ .value }} {{ end }} template: metadata: labels: {{ range .Values.Labels }} {{ .name }}: {{ .value }} {{ end }} spec: terminationGracePeriodSeconds: {{ .Values.terminationGracePeriodSeconds }} volumes: - name: localtime hostPath: path: /etc/localtime - name: {{ .Chart.Name }}-{{ .Release.Name }}-data persistentVolumeClaim: claimName: {{ .Chart.Name }}-{{ .Release.Name }}-pvc containers: - name: wikijs image: {{ .Values.imageName }}:{{ .Values.imageTag }} ports: - name: tcp containerPort: 3000 volumeMounts: - name: localtime mountPath: /etc/localtime readOnly: true - name: {{ .Chart.Name }}-{{ .Release.Name }}-data mountPath: /wiki/data env: {{ range .Values.Envs }} - name: {{ .name }} value: {{ .value }} {{ end }} startupProbe: tcpSocket: port: 3000 initialDelaySeconds: 0 periodSeconds: 10 timeoutSeconds: 1 failureThreshold: 30 readinessProbe: tcpSocket: port: 3000 initialDelaySeconds: 5 periodSeconds: 5 timeoutSeconds: 1 successThreshold: 1 livenessProbe: tcpSocket: port: 3000 initialDelaySeconds: 10 periodSeconds: 5 timeoutSeconds: 1 failureThreshold: 3