diff options
| author | Robert Günzler <r@gnzler.io> | 2026-02-23 14:26:40 +0100 |
|---|---|---|
| committer | Robert Günzler <r@gnzler.io> | 2026-02-23 14:26:40 +0100 |
| commit | 36fc6edc20b4f3f204f136de33a276934203929c (patch) | |
| tree | e6ff4a2077a94b12cdae42f28d1c432d8bf8929b /bundles/immich/files | |
| parent | dbbc98cb1da7ba305d6bf76ddb065b1e461e2d90 (diff) | |
immich: *
Signed-off-by: Robert Günzler <r@gnzler.io>
Diffstat (limited to 'bundles/immich/files')
| -rw-r--r-- | bundles/immich/files/kube.yaml | 43 |
1 files changed, 29 insertions, 14 deletions
diff --git a/bundles/immich/files/kube.yaml b/bundles/immich/files/kube.yaml index 18f5cf6..12b7c3b 100644 --- a/bundles/immich/files/kube.yaml +++ b/bundles/immich/files/kube.yaml @@ -11,13 +11,19 @@ metadata: traefik.http.routers.immich.service: immich traefik.http.services.immich.loadbalancer.server.port: 2283 - # TODO: https://immich.app/docs/features/monitoring - # https://github.com/immich-app/immich/blob/v1.121.0/docker/prometheus.yml - # # metrics - # traefik.http.routers.immich-metrics.entrypoints: metrics - # traefik.http.routers.immich-metrics.rule: Path(`/metrics/immich`) - # traefik.http.routers.immich-metrics.middlewares: replacepath-metrics + # https://immich.app/docs/features/monitoring + # https://github.com/immich-app/immich/blob/v1.121.0/docker/prometheus.yml + traefik.http.services.immich-api-metrics.loadbalancer.server.port: 8081 + traefik.http.services.immich-svc-metrics.loadbalancer.server.port: 8082 + traefik.http.routers.immich-api-metrics.entrypoints: metrics + traefik.http.routers.immich-api-metrics.rule: Path(`/metrics/immich-api`) + traefik.http.routers.immich-api-metrics.middlewares: replacepath-metrics@file + traefik.http.routers.immich-api-metrics.service: immich-api-metrics + traefik.http.routers.immich-svc-metrics.entrypoints: metrics + traefik.http.routers.immich-svc-metrics.rule: Path(`/metrics/immich-svc`) + traefik.http.routers.immich-svc-metrics.middlewares: replacepath-metrics@file + traefik.http.routers.immich-svc-metrics.service: immich-svc-metrics spec: restartPolicy: Always dnsPolicy: Default @@ -30,11 +36,23 @@ spec: env: - name: IMMICH_CONFIG_FILE value: /immich.yaml + - name: IMMICH_TELEMETRY_INCLUDE + value: all ports: - containerPort: 2283 protocol: TCP - # NOTE: required to make tv app work + # NOTE: hostPort is required to make local net broadcasting work hostPort: 2283 + # api metrics + - containerPort: 8081 + protocol: TCP + # microservice metrics + - containerPort: 8082 + protocol: TCP + livenessProbe: + httpGet: + path: /api/server/ping + port: 2283 volumeMounts: - name: config mountPath: /immich.yaml @@ -48,13 +66,14 @@ spec: podman.io/device=/dev/dri/card0: 1 podman.io/device=/dev/dri/renderD128: 1 limits: - #cpu: 300m - #memory: 512Mi + memory: 512Mi + - name: redis image: docker.io/redis:6.2-alpine@sha256:eaba718fecd1196d88533de7ba49bf903ad33664a92debb24660a922ecd9cac8 livenessProbe: exec: command: ["sh", "-c", "redis-cli ping || exit 1"] + - name: postgres image: docker.io/tensorchord/pgvecto-rs:pg14-v0.2.0@sha256:90724186f0a3517cf6914295b5ab410db9ce23190a2d9d0b9dd6463e3fa298f0 envFrom: @@ -68,11 +87,7 @@ spec: mountPath: /var/lib/postgresql/data livenessProbe: exec: - command: - - /bin/sh - - -c - - pg_isready --dbname='${DB_DATABASE_NAME}' --username='${DB_USERNAME}' || exit 1 - # ; Chksum="$$(psql --dbname='${DB_DATABASE_NAME}' --username='${DB_USERNAME}' --tuples-only --no-align --command='SELECT COALESCE(SUM(checksum_failures), 0) FROM pg_stat_database')"; echo "checksum failure count is $$Chksum"; [ "$$Chksum" = '0' ] || exit 1 + command: ["pg_isready", "--dbname='$DB_DATABASE_NAME'", "--username='$DB_USERNAME'"] command: - docker-entrypoint.sh - -c |