-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathvalues.yaml
188 lines (179 loc) · 5.47 KB
/
values.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
## This chart relies on the common library chart from bjw-s
## You can find it at https://github.com/bjw-s/helm-charts/tree/main/charts/library/common
## Refer there for more detail about the supported values
# These entries are shared between all the Immich components
immich:
env:
REDIS_HOSTNAME: '{{ printf "%s-redis-master" .Release.Name }}'
DB_HOSTNAME:
valueFrom:
secretKeyRef:
name: immich-cnpg-cluster-app
key: host
DB_USERNAME:
valueFrom:
secretKeyRef:
name: immich-cnpg-cluster-app
key: username
DB_DATABASE_NAME:
valueFrom:
secretKeyRef:
name: immich-cnpg-cluster-app
key: dbname
# -- You should provide your own secret outside of this helm-chart and use `postgresql.global.postgresql.auth.existingSecret` to provide credentials to the postgresql instance
DB_PASSWORD:
valueFrom:
secretKeyRef:
name: immich-cnpg-cluster-app
key: password
IMMICH_MACHINE_LEARNING_URL: '{{ printf "http://%s-machine-learning:3003" .Release.Name }}'
IMMICH_LOG_LEVEL: log
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: immich-library-data
# enabled: true
# type: persistentVolumeClaim
# accessMode: ReadWriteOnce
size: 200Gi
# configuration is immich-config.json converted to yaml
# ref: https://immich.app/docs/install/config-file/
#
configuration:
machineLearning:
duplicateDetection:
enabled: true
maxDistance: 0.03
server:
externalDomain: https://immich.terence.cloud
# trash:
# enabled: false
# days: 30
# storageTemplate:
# enabled: true
# template: "{{y}}/{{y}}-{{MM}}-{{dd}}/{{filename}}"
# Dependencies
postgresql:
enabled: false
image:
repository: tensorchord/pgvecto-rs
tag: pg14-v0.2.0
global:
postgresql:
auth:
username: immich
database: immich
existingSecret: immich-postgres-user-password
secretKeys:
userPasswordKey: "DB_PASSWORD"
adminPasswordKey: "ADMIN_PASSWORD"
replicationPasswordKey: "REPLICATION_PASSWORD"
primary:
initdb:
scripts:
create-extensions.sql: |
CREATE EXTENSION cube;
CREATE EXTENSION earthdistance;
CREATE EXTENSION vectors;
containerSecurityContext:
enabled: false
runAsUser: 0
runAsGroup: 0
runAsNonRoot: false
podSecurityContext:
enabled: false
persistence:
enabled: true
# existingClaim: immich-postgresql-data
redis:
enabled: true
architecture: standalone
auth:
enabled: false
master:
resourcesPreset: micro
persistence:
labels:
velero.io/exclude-from-backup: "true"
# Immich components
server:
enabled: true
image:
repository: ghcr.io/immich-app/immich-server
pullPolicy: IfNotPresent
tag: v1.126.1
ingress:
main:
enabled: true
annotations:
# proxy-body-size is set to 0 to remove the body limit on file uploads
nginx.ingress.kubernetes.io/proxy-body-size: "0"
external-dns.alpha.kubernetes.io/target: home.terence.cloud
external-dns.alpha.kubernetes.io/cloudflare-proxied: "false"
cert-manager.io/cluster-issuer: letsencrypt
gethomepage.dev/enabled: "true"
gethomepage.dev/name: "Immich"
gethomepage.dev/description: "Photo library management."
gethomepage.dev/group: "Media"
gethomepage.dev/icon: "immich"
ingressClassName: nginx
hosts:
- host: immich.terence.cloud
paths:
- path: "/"
tls:
- secretName: immich-tls
hosts:
- immich.terence.cloud
machine-learning:
enabled: true
image:
repository: ghcr.io/immich-app/immich-machine-learning
pullPolicy: IfNotPresent
tag: v1.126.1
env:
TRANSFORMERS_CACHE: /cache
persistence:
cache:
enabled: true
size: 10Gi
# Optional: Set this to pvc to avoid downloading the ML models every start.
type: pvc
accessMode: ReadWriteOnce
# storageClass: your-class
labels:
velero.io/exclude-from-backup: "true"
cnpg-cluster:
type: postgresql
mode: standalone
cluster:
instances: 1
imageName: "ghcr.io/tensorchord/cloudnative-pgvecto.rs:16.2-v0.2.0"
storage:
size: 8Gi
storageClass: ""
resources: {}
primaryUpdateMethod: switchover
primaryUpdateStrategy: unsupervised
logLevel: "info"
roles: []
monitoring:
enabled: true
podMonitor:
enabled: true
postgresql:
shared_preload_libraries:
- "vectors.so"
initdb:
database: immich
postInitSQL:
- ALTER SYSTEM SET search_path TO "$user", public, vectors;
- CREATE EXTENSION IF NOT EXISTS "vectors";
- CREATE EXTENSION IF NOT EXISTS "cube";
- CREATE EXTENSION IF NOT EXISTS "earthdistance";