immich added

This commit is contained in:
2025-10-27 09:44:37 +01:00
commit e6f3536e9e
37 changed files with 2670 additions and 0 deletions

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,12 @@
---
apiVersion: image.toolkit.fluxcd.io/v1
kind: ImagePolicy
metadata:
name: immich-exporter
namespace: immich
spec:
imageRepositoryRef:
name: immich-exporter
policy:
semver:
range: '1.*.*'

View File

@@ -0,0 +1,12 @@
---
apiVersion: image.toolkit.fluxcd.io/v1
kind: ImageRepository
metadata:
name: immich-exporter
namespace: immich
spec:
# https://hub.docker.com/r/friendlyfriend/prometheus-immich-exporter/tags
image: friendlyfriend/prometheus-immich-exporter
interval: 24h
exclusionList:
- latest

View File

@@ -0,0 +1,15 @@
---
apiVersion: v1
kind: Service
metadata:
name: immich-exporter
namespace: immich
labels:
app: immich-exporter
spec:
ports:
- name: http
port: 80
targetPort: http
selector:
app: immich-exporter

View File

@@ -0,0 +1,18 @@
apiVersion: monitoring.coreos.com/v1
kind: ServiceMonitor
metadata:
name: immich-exporter
namespace: immich
labels:
app: immich-exporter
spec:
selector:
matchLabels:
app: immich-exporter
endpoints:
- port: http # port name of service
scheme: http
interval: 15s
metricRelabelings:
- action: labeldrop
regex: (instance|pod)

View File

@@ -0,0 +1,12 @@
---
apiVersion: v1
kind: ConfigMap
metadata:
name: immich-exporter
namespace: immich
labels:
app: immich-exporter
data:
# https://immich.app/docs/install/environment-variables/
IMMICH_HOST: 'immich-server.immich.svc.cluster.local'
IMMICH_PORT: '80'

View File

@@ -0,0 +1,65 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: immich-exporter
namespace: immich
annotations:
reloader.stakater.com/auto: 'true'
labels:
app: immich-exporter
spec:
replicas: 1
selector:
matchLabels:
app: immich-exporter
template:
metadata:
labels:
app: immich-exporter
spec:
automountServiceAccountToken: false
containers:
- name: immich-exporter
# https://github.com/friendlyFriend4000/prometheus-immich-exporter
image: friendlyfriend/prometheus-immich-exporter:1.2.3 # {"$imagepolicy": "immich:immich-exporter"}
imagePullPolicy: IfNotPresent
resources:
limits:
memory: 100Mi
requests:
memory: 25Mi
cpu: 1m
ports:
- name: http
containerPort: 8000
protocol: TCP
env:
- name: TZ
value: 'Europe/Berlin'
envFrom:
- configMapRef:
name: immich-exporter
optional: false
- secretRef:
name: immich-exporter
optional: false
securityContext:
privileged: false
seccompProfile:
type: 'RuntimeDefault'
livenessProbe:
httpGet:
path: /metrics
port: http
initialDelaySeconds: 10
periodSeconds: 30
timeoutSeconds: 5
failureThreshold: 3
readinessProbe:
httpGet:
path: /metrics
port: http
initialDelaySeconds: 5
periodSeconds: 15
timeoutSeconds: 5
failureThreshold: 3

View File

@@ -0,0 +1,10 @@
---
apiVersion: v1
kind: Secret
metadata:
name: immich-exporter
namespace: immich
labels:
app: immich-exporter
stringData:
IMMICH_API_TOKEN: change_me