--- # yaml-language-server: $schema=https://kubernetes-schemas.pages.dev/helm.toolkit.fluxcd.io/helmrelease_v2beta2.json apiVersion: helm.toolkit.fluxcd.io/v2beta2 kind: HelmRelease metadata: name: &app immich-machine-learning namespace: default spec: interval: 30m chart: spec: chart: app-template version: 2.4.0 interval: 30m sourceRef: kind: HelmRepository name: bjw-s namespace: flux-system dependsOn: - name: immich-server values: controllers: main: strategy: Recreate annotations: configmap.reloader.stakater.com/reload: &configMap immich-configmap secret.reloader.stakater.com/reload: &secret immich-secret containers: main: image: repository: ghcr.io/immich-app/immich-machine-learning tag: v1.93.3@sha256:2568d563f69b82126e3a4105eef577c2f1a8f33701cd3a7ef7b936d061bc9658 env: IMMICH_MEDIA_LOCATION: &mediaLocation /usr/src/app/upload MACHINE_LEARNING_HOST: 0.0.0.0 MACHINE_LEARNING_PORT: &port 3003 MACHINE_LEARNING_CACHE_FOLDER: /cache TRANSFORMERS_CACHE: /cache resources: requests: cpu: 100m memory: 274M limits: memory: 3949M probes: liveness: &probes enabled: true custom: true spec: httpGet: path: /ping port: *port initialDelaySeconds: 0 periodSeconds: 10 timeoutSeconds: 1 failureThreshold: 5 readiness: *probes startup: enabled: false pod: enableServiceLinks: false securityContext: runAsUser: 568 runAsGroup: 568 fsGroup: 568 fsGroupChangePolicy: OnRootMismatch topologySpreadConstraints: - maxSkew: 1 topologyKey: kubernetes.io/hostname whenUnsatisfiable: DoNotSchedule labelSelector: matchLabels: app.kubernetes.io/name: *app service: main: ports: http: port: *port persistence: library: type: nfs server: "192.168.9.10" path: /mnt/storage/apps/immich globalMounts: - path: *mediaLocation cache: type: persistentVolumeClaim existingClaim: immich-machine-learning-cache globalMounts: - path: /cache geocoding-dump: type: emptyDir globalMounts: - path: /usr/src/app/.reverse-geocoding-dump transformers-cache: type: emptyDir globalMounts: - path: /usr/src/app/.transformers_cache