apiVersion: v1 kind: Service metadata: name: firefly-iii labels: app: firefly-iii spec: ports: - port: 80 selector: app: firefly-iii tier: frontend type: LoadBalancer --- apiVersion: v1 kind: PersistentVolumeClaim metadata: name: firefly-iii-export-claim labels: app: firefly-iii spec: accessModes: - ReadWriteOnce resources: requests: storage: 20Gi --- apiVersion: v1 kind: PersistentVolumeClaim metadata: name: firefly-iii-upload-claim labels: app: firefly-iii spec: accessModes: - ReadWriteOnce resources: requests: storage: 20Gi --- apiVersion: apps/v1 kind: Deployment metadata: name: firefly-iii labels: app: firefly-iii spec: selector: matchLabels: app: firefly-iii tier: frontend strategy: type: Recreate template: metadata: labels: app: firefly-iii tier: frontend spec: containers: - image: jc5x/firefly-iii name: firefly-iii env: - name: APP_ENV value: "local" - name: APP_KEY valueFrom: secretKeyRef: name: firefly-iii-secrets key: app_key - name: DB_HOST value: firefly-iii-mysql - name: DB_CONNECTION value: mysql - name: DB_DATABASE value: "fireflyiii" - name: DB_USERNAME value: "root" - name: DB_PASSWORD valueFrom: secretKeyRef: name: firefly-iii-secrets key: db_password ports: - containerPort: 80 name: firefly-iii volumeMounts: - mountPath: "/var/www/firefly-iii/storage/export" name: firefly-iii-export - mountPath: "/var/www/firefly-iii/storage/upload" name: firefly-iii-upload imagePullPolicy: Always volumes: - name: firefly-iii-export persistentVolumeClaim: claimName: firefly-iii-export-claim - name: firefly-iii-upload persistentVolumeClaim: claimName: firefly-iii-upload-claim