apiVersion: apps/v1 kind: Deployment metadata: name: immich-server namespace: immich annotations: reloader.stakater.com/auto: 'true' labels: app: immich-server spec: replicas: 1 selector: matchLabels: app: immich-server template: metadata: labels: app: immich-server spec: automountServiceAccountToken: false containers: - name: immich-server image: ghcr.io/immich-app/immich-server:v2.1.0 # {"$imagepolicy": "immich:immich-server"} imagePullPolicy: IfNotPresent resources: limits: memory: 8Gi requests: memory: 1Gi cpu: 1000m ports: - name: http containerPort: 2283 protocol: TCP env: - name: DB_HOSTNAME valueFrom: secretKeyRef: name: immich-db-app key: host optional: false - name: DB_DATABASE_NAME valueFrom: secretKeyRef: name: immich-db-app key: dbname optional: false - name: DB_USERNAME valueFrom: secretKeyRef: name: immich-db-app key: username optional: false - name: DB_PASSWORD valueFrom: secretKeyRef: name: immich-db-app key: password optional: false envFrom: - configMapRef: name: immich optional: false livenessProbe: httpGet: path: /api/server/ping port: http failureThreshold: 6 initialDelaySeconds: 60 periodSeconds: 10 readinessProbe: httpGet: path: /api/server/ping port: http failureThreshold: 6 periodSeconds: 10 securityContext: privileged: true # for intel quick sync volumeMounts: - name: immich mountPath: /data/ - name: immich-upload mountPath: /data/upload/ - name: synology-photos mountPath: /mnt/synology-photos/ readOnly: false nodeSelector: intel.feature.node.kubernetes.io/gpu: 'true' volumes: # unraid NFFS - name: immich persistentVolumeClaim: claimName: immich - name: immich-upload persistentVolumeClaim: claimName: immich-upload - name: synology-photos persistentVolumeClaim: claimName: immich-synology-photos