apiVersion: apps/v1 kind: Deployment metadata: name: firefly-iii namespace: firefly-iii spec: replicas: 1 strategy: type: Recreate selector: matchLabels: component: web template: metadata: labels: component: web spec: securityContext: seccompProfile: type: RuntimeDefault containers: - name: firefly-iii image: fireflyiii/core:version-6.6.3 ports: - name: http containerPort: 8080 protocol: TCP env: - name: APP_ENV value: production - name: APP_KEY valueFrom: secretKeyRef: name: firefly-iii-secrets key: appKey - name: APP_URL value: https://{{ .domain }} - name: SITE_OWNER value: {{ .adminEmail }} - name: TZ value: {{ .timezone }} - name: DB_CONNECTION value: pgsql - name: DB_HOST value: {{ .db.host }} - name: DB_PORT value: "{{ .db.port }}" - name: DB_DATABASE value: {{ .db.name }} - name: DB_USERNAME value: {{ .db.user }} - name: DB_PASSWORD valueFrom: secretKeyRef: name: firefly-iii-secrets key: dbPassword - name: TRUSTED_PROXIES value: "**" resources: limits: cpu: 500m ephemeral-storage: 1Gi memory: 512Mi requests: cpu: 50m ephemeral-storage: 50Mi memory: 256Mi volumeMounts: - name: firefly-iii-upload mountPath: /var/www/html/storage/upload livenessProbe: httpGet: path: /health port: 8080 initialDelaySeconds: 60 timeoutSeconds: 5 periodSeconds: 15 failureThreshold: 6 readinessProbe: httpGet: path: /health port: 8080 initialDelaySeconds: 30 timeoutSeconds: 3 periodSeconds: 10 failureThreshold: 3 securityContext: allowPrivilegeEscalation: false capabilities: drop: - ALL readOnlyRootFilesystem: false volumes: - name: firefly-iii-upload persistentVolumeClaim: claimName: firefly-iii-upload restartPolicy: Always