bundlewrap/bundles/docker-immich/metadata.py

62 lines
2 KiB
Python
Raw Normal View History

2024-10-26 16:27:54 +02:00
assert node.has_bundle('docker-engine')
defaults = {
'docker-engine': {
'containers': {
'immich': {
'image': 'ghcr.io/imagegenius/immich:latest',
'environment': {
'DB_DATABASE_NAME': 'immich',
'DB_HOSTNAME': 'immich-postgresql',
2024-10-26 16:27:54 +02:00
'DB_PASSWORD': repo.vault.password_for(f'{node.name} postgresql immich'),
'DB_USERNAME': 'immich',
'REDIS_HOSTNAME': 'immich-redis',
2024-10-26 16:27:54 +02:00
},
'volumes': {
'config': '/config',
'libraries': '/libraries',
'photos': '/photos',
},
'ports': {
'8080': '8080',
},
2024-10-26 16:27:54 +02:00
'needs': {
'svc_systemd:docker-immich-postgresql',
'svc_systemd:docker-immich-redis',
2024-10-26 16:27:54 +02:00
},
'requires': {
'docker-immich-postgresql.service',
'docker-immich-redis.service',
2024-10-26 16:27:54 +02:00
},
},
'immich-postgresql': {
2024-10-26 16:27:54 +02:00
'image': 'tensorchord/pgvecto-rs:pg14-v0.2.0',
'environment': {
'POSTGRES_PASSWORD': repo.vault.password_for(f'{node.name} postgresql immich'),
'POSTGRES_USER': 'immich',
'POSTGRES_DB': 'immich',
},
'volumes': {
'database': '/var/lib/postgresql/data',
},
},
'immich-redis': {
'image': 'docker.io/redis:6.2-alpine',
},
2024-10-26 16:27:54 +02:00
},
},
'nginx': {
'vhosts': {
'immich': {
'locations': {
'/': {
'target': 'http://127.0.0.1:8080/',
'websockets': True,
'max_body_size': '5000m',
2024-10-26 16:27:54 +02:00
},
},
},
},
},
}