131 lines
3.6 KiB
YAML
131 lines
3.6 KiB
YAML
## This chart relies on the common library chart from bjw-s
|
|
## You can find it at https://github.com/bjw-s-labs/helm-charts/tree/common-4.3.0/charts/library/common
|
|
## Refer there for more detail about the supported values
|
|
|
|
controllers:
|
|
main:
|
|
containers:
|
|
main:
|
|
image:
|
|
tag: v2.6.3
|
|
env:
|
|
REDIS_HOSTNAME: '{{ printf "%s-valkey" .Release.Name }}'
|
|
IMMICH_MACHINE_LEARNING_URL: '{{ printf "http://%s-machine-learning:3003" .Release.Name }}'
|
|
|
|
DB_HOSTNAME: "immich-postgres-rw"
|
|
DB_PORT: "5432"
|
|
|
|
# Database name matches what we set in the CNPG cluster
|
|
DB_DATABASE_NAME: "immich"
|
|
|
|
# Credentials: reuse the CNPG bootstrap secret
|
|
DB_USERNAME:
|
|
valueFrom:
|
|
secretKeyRef:
|
|
name: immich-postgres-app
|
|
key: username
|
|
DB_PASSWORD:
|
|
valueFrom:
|
|
secretKeyRef:
|
|
name: immich-postgres-app
|
|
key: password
|
|
|
|
immich:
|
|
metrics:
|
|
# Enabling this will create the service monitors needed to monitor immich with the prometheus operator
|
|
enabled: false
|
|
persistence:
|
|
# Main data store for all photos shared between different components.
|
|
library:
|
|
# Automatically creating the library volume is not supported by this chart
|
|
# You have to specify an existing PVC to use
|
|
existingClaim: pvc-immich
|
|
# configuration is immich-config.json converted to yaml
|
|
# ref: https://immich.app/docs/install/config-file/
|
|
#
|
|
configuration:
|
|
# trash:
|
|
# enabled: false
|
|
# days: 30
|
|
storageTemplate:
|
|
enabled: true
|
|
template: "{{y}}/{{y}}-{{MM}}/{{filename}}"
|
|
|
|
# Dependencies
|
|
valkey:
|
|
enabled: true
|
|
controllers:
|
|
main:
|
|
containers:
|
|
main:
|
|
image:
|
|
repository: docker.io/valkey/valkey
|
|
tag: 9.0-alpine@sha256:b4ee67d73e00393e712accc72cfd7003b87d0fcd63f0eba798b23251bfc9c394
|
|
pullPolicy: IfNotPresent
|
|
persistence:
|
|
data:
|
|
enabled: true
|
|
size: 1Gi
|
|
# Optional: Set this to persistentVolumeClaim to keep job queues persistent
|
|
type: emptyDir
|
|
accessMode: ReadWriteOnce
|
|
storageClass: local-storage
|
|
|
|
# Immich components
|
|
server:
|
|
enabled: true
|
|
controllers:
|
|
main:
|
|
containers:
|
|
main:
|
|
image:
|
|
repository: ghcr.io/immich-app/immich-server
|
|
pullPolicy: IfNotPresent
|
|
ingress:
|
|
main:
|
|
enabled: true
|
|
ingressClassName: traefik
|
|
annotations:
|
|
cert-manager.io/cluster-issuer: "letsencrypt-prod"
|
|
traefik.ingress.kubernetes.io/router.entrypoints: websecure
|
|
traefik.ingress.kubernetes.io/proxy-body-size: "0"
|
|
hosts:
|
|
- host: immich-ad.ovh
|
|
paths:
|
|
- path: /
|
|
pathType: Prefix
|
|
tls:
|
|
- hosts:
|
|
- immich-ad.ovh
|
|
secretName: immich-tls
|
|
|
|
service:
|
|
main:
|
|
type: ClusterIP
|
|
ports:
|
|
http:
|
|
port: 2283
|
|
targetPort: 2283
|
|
|
|
|
|
machine-learning:
|
|
enabled: true
|
|
controllers:
|
|
main:
|
|
containers:
|
|
main:
|
|
image:
|
|
repository: ghcr.io/immich-app/immich-machine-learning
|
|
pullPolicy: IfNotPresent
|
|
env:
|
|
TRANSFORMERS_CACHE: /cache
|
|
HF_XET_CACHE: /cache/huggingface-xet
|
|
MPLCONFIGDIR: /cache/matplotlib-config
|
|
persistence:
|
|
cache:
|
|
enabled: true
|
|
size: 10Gi
|
|
# Optional: Set this to persistentVolumeClaim to avoid downloading the ML models every start.
|
|
type: emptyDir
|
|
accessMode: ReadWriteMany
|
|
# storageClass: your-class |