immich.yaml
· 3.9 KiB · YAML
Eredeti
apiVersion: v1
kind: Pod
metadata:
name: immich
labels:
app: immich
annotations:
spec:
## Volume definitions
volumes:
- hostPath:
## Equivalent of UPLOAD_LOCATION in docker-compose
path: /path/to/immich/data
type: Directory
name: immich-data-host
- hostPath:
path: /path/to/immich/model-cache
type: Directory
name: immich-model-cache-host
- name: immich-psql
persistentVolumeClaim:
claimName: immich-psql
- hostPath:
path: /path/to/immich/redis
type: Directory
name: immich-redis-host
- hostPath:
path: /path/to/nextcloud/app/data/nc-user/files
type: Directory
readOnly: true
name: nextcloud-nc-user
## Container definitions
containers:
- name: server
image: ghcr.io/immich-app/immich-server:v1.112.1
env:
- name: IMMICH_WORKERS_INCLUDE
value: api
envFrom:
- configMapRef:
name: immich-config
optional: false
securityContext:
capabilities:
drop:
- CAP_MKNOD
- CAP_NET_RAW
- CAP_AUDIT_WRITE
volumeMounts:
- mountPath: /usr/src/app/upload
name: immich-data-host
- mountPath: /nextcloud/nc-user
name: nextcloud-nc-user
readOnly: true
- name: microservices
image: ghcr.io/immich-app/immich-server:v1.112.1
env:
- name: IMMICH_WORKERS_EXCLUDE
value: api
envFrom:
- configMapRef:
name: immich-config
optional: false
securityContext:
capabilities:
drop:
- CAP_MKNOD
- CAP_NET_RAW
- CAP_AUDIT_WRITE
volumeMounts:
- mountPath: /usr/src/app/upload
name: immich-data-host
- mountPath: /nextcloud/nc-user
name: nextcloud-nc-user
readOnly: true
- name: machine-learning
image: ghcr.io/immich-app/immich-machine-learning:v1.112.1
envFrom:
- configMapRef:
name: immich-config
optional: false
securityContext:
capabilities:
drop:
- CAP_MKNOD
- CAP_NET_RAW
- CAP_AUDIT_WRITE
volumeMounts:
- mountPath: /usr/src/app/upload
name: immich-data-host
- mountPath: /cache
name: immich-model-cache-host
- mountPath: /nextcloud/nc-user
name: nextcloud-nc-user
readOnly: true
- name: psql
image: docker.io/tensorchord/pgvecto-rs:pg14-v0.2.0
resource: {}
securityContext:
capabilities:
drop:
- CAP_MKNOD
- CAP_NET_RAW
- CAP_AUDIT_WRITE
volumeMounts:
- mountPath: /var/lib/postgresql/data
name: immich-psql
env:
- name: POSTGRES_USER
valueFrom:
configMapKeyRef:
name: immich-config
key: DB_USERNAME
- name: POSTGRES_PASSWORD
valueFrom:
configMapKeyRef:
name: immich-config
key: DB_PASSWORD
- name: POSTGRES_DB
valueFrom:
configMapKeyRef:
name: immich-config
key: DB_DATABASE_NAME
- name: POSTGRES_INITDB_ARGS
value: "--data-checksums"
args: ["-c" ,"shared_preload_libraries=vectors.so", "-c", 'search_path="$$user", public, vectors', "-c", "logging_collector=on", "-c", "max_wal_size=2GB", "-c", "shared_buffers=512MB", "-c", "wal_compression=on"]
- name: redis
image: docker.io/library/redis:6.2-alpine
args:
- redis-server
- --save
- 60
- 1
- --loglevel
- warning
resources: {}
securityContext:
capabilities:
drop:
- CAP_MKNOD
- CAP_NET_RAW
- CAP_AUDIT_WRITE
volumeMounts:
- mountPath: /data
name: immich-redis-host
restartPolicy: Always
status: {}
| 1 | apiVersion: v1 |
| 2 | kind: Pod |
| 3 | metadata: |
| 4 | name: immich |
| 5 | labels: |
| 6 | app: immich |
| 7 | annotations: |
| 8 | spec: |
| 9 | |
| 10 | ## Volume definitions |
| 11 | volumes: |
| 12 | - hostPath: |
| 13 | ## Equivalent of UPLOAD_LOCATION in docker-compose |
| 14 | path: /path/to/immich/data |
| 15 | type: Directory |
| 16 | name: immich-data-host |
| 17 | - hostPath: |
| 18 | path: /path/to/immich/model-cache |
| 19 | type: Directory |
| 20 | name: immich-model-cache-host |
| 21 | - name: immich-psql |
| 22 | persistentVolumeClaim: |
| 23 | claimName: immich-psql |
| 24 | - hostPath: |
| 25 | path: /path/to/immich/redis |
| 26 | type: Directory |
| 27 | name: immich-redis-host |
| 28 | - hostPath: |
| 29 | path: /path/to/nextcloud/app/data/nc-user/files |
| 30 | type: Directory |
| 31 | readOnly: true |
| 32 | name: nextcloud-nc-user |
| 33 | |
| 34 | ## Container definitions |
| 35 | containers: |
| 36 | - name: server |
| 37 | image: ghcr.io/immich-app/immich-server:v1.112.1 |
| 38 | env: |
| 39 | - name: IMMICH_WORKERS_INCLUDE |
| 40 | value: api |
| 41 | envFrom: |
| 42 | - configMapRef: |
| 43 | name: immich-config |
| 44 | optional: false |
| 45 | securityContext: |
| 46 | capabilities: |
| 47 | drop: |
| 48 | - CAP_MKNOD |
| 49 | - CAP_NET_RAW |
| 50 | - CAP_AUDIT_WRITE |
| 51 | volumeMounts: |
| 52 | - mountPath: /usr/src/app/upload |
| 53 | name: immich-data-host |
| 54 | - mountPath: /nextcloud/nc-user |
| 55 | name: nextcloud-nc-user |
| 56 | readOnly: true |
| 57 | |
| 58 | |
| 59 | - name: microservices |
| 60 | image: ghcr.io/immich-app/immich-server:v1.112.1 |
| 61 | env: |
| 62 | - name: IMMICH_WORKERS_EXCLUDE |
| 63 | value: api |
| 64 | envFrom: |
| 65 | - configMapRef: |
| 66 | name: immich-config |
| 67 | optional: false |
| 68 | securityContext: |
| 69 | capabilities: |
| 70 | drop: |
| 71 | - CAP_MKNOD |
| 72 | - CAP_NET_RAW |
| 73 | - CAP_AUDIT_WRITE |
| 74 | volumeMounts: |
| 75 | - mountPath: /usr/src/app/upload |
| 76 | name: immich-data-host |
| 77 | - mountPath: /nextcloud/nc-user |
| 78 | name: nextcloud-nc-user |
| 79 | readOnly: true |
| 80 | |
| 81 | - name: machine-learning |
| 82 | image: ghcr.io/immich-app/immich-machine-learning:v1.112.1 |
| 83 | envFrom: |
| 84 | - configMapRef: |
| 85 | name: immich-config |
| 86 | optional: false |
| 87 | securityContext: |
| 88 | capabilities: |
| 89 | drop: |
| 90 | - CAP_MKNOD |
| 91 | - CAP_NET_RAW |
| 92 | - CAP_AUDIT_WRITE |
| 93 | volumeMounts: |
| 94 | - mountPath: /usr/src/app/upload |
| 95 | name: immich-data-host |
| 96 | - mountPath: /cache |
| 97 | name: immich-model-cache-host |
| 98 | - mountPath: /nextcloud/nc-user |
| 99 | name: nextcloud-nc-user |
| 100 | readOnly: true |
| 101 | |
| 102 | - name: psql |
| 103 | image: docker.io/tensorchord/pgvecto-rs:pg14-v0.2.0 |
| 104 | resource: {} |
| 105 | securityContext: |
| 106 | capabilities: |
| 107 | drop: |
| 108 | - CAP_MKNOD |
| 109 | - CAP_NET_RAW |
| 110 | - CAP_AUDIT_WRITE |
| 111 | volumeMounts: |
| 112 | - mountPath: /var/lib/postgresql/data |
| 113 | name: immich-psql |
| 114 | env: |
| 115 | - name: POSTGRES_USER |
| 116 | valueFrom: |
| 117 | configMapKeyRef: |
| 118 | name: immich-config |
| 119 | key: DB_USERNAME |
| 120 | - name: POSTGRES_PASSWORD |
| 121 | valueFrom: |
| 122 | configMapKeyRef: |
| 123 | name: immich-config |
| 124 | key: DB_PASSWORD |
| 125 | - name: POSTGRES_DB |
| 126 | valueFrom: |
| 127 | configMapKeyRef: |
| 128 | name: immich-config |
| 129 | key: DB_DATABASE_NAME |
| 130 | - name: POSTGRES_INITDB_ARGS |
| 131 | value: "--data-checksums" |
| 132 | args: ["-c" ,"shared_preload_libraries=vectors.so", "-c", 'search_path="$$user", public, vectors', "-c", "logging_collector=on", "-c", "max_wal_size=2GB", "-c", "shared_buffers=512MB", "-c", "wal_compression=on"] |
| 133 | |
| 134 | - name: redis |
| 135 | image: docker.io/library/redis:6.2-alpine |
| 136 | args: |
| 137 | - redis-server |
| 138 | - --save |
| 139 | - 60 |
| 140 | - 1 |
| 141 | - --loglevel |
| 142 | - warning |
| 143 | resources: {} |
| 144 | securityContext: |
| 145 | capabilities: |
| 146 | drop: |
| 147 | - CAP_MKNOD |
| 148 | - CAP_NET_RAW |
| 149 | - CAP_AUDIT_WRITE |
| 150 | volumeMounts: |
| 151 | - mountPath: /data |
| 152 | name: immich-redis-host |
| 153 | |
| 154 | restartPolicy: Always |
| 155 | status: {} |
| 156 |