--- apiVersion: apps/v1 kind: Deployment metadata: name: immich-microservices spec: replicas: 1 selector: matchLabels: app: immich-microservices strategy: rollingUpdate: maxSurge: 0 maxUnavailable: 1 type: RollingUpdate template: metadata: labels: app: immich-microservices component: microservices spec: containers: - image: "{{ .apps.immich.serverImage }}" name: immich-microservices env: - name: REDIS_HOSTNAME value: "{{ .apps.immich.redisHostname }}" - name: REDIS_PASSWORD valueFrom: secretKeyRef: name: immich-secrets key: apps.redis.password - name: DB_HOSTNAME value: "{{ .apps.immich.dbHostname }}" - name: DB_USERNAME value: "{{ .apps.immich.dbUsername }}" - name: DB_PASSWORD valueFrom: secretKeyRef: name: immich-secrets key: apps.immich.dbPassword - name: TZ value: "{{ .apps.immich.timezone }}" - name: IMMICH_WORKERS_EXCLUDE value: api volumeMounts: - mountPath: /usr/src/app/upload name: immich-storage readOnly: false volumes: - name: immich-storage persistentVolumeClaim: claimName: immich-pvc affinity: podAffinity: requiredDuringSchedulingIgnoredDuringExecution: - labelSelector: matchLabels: app: immich component: server topologyKey: kubernetes.io/hostname