pyinfra/services/immich/docker-compose.yml
2024-04-25 15:31:13 +02:00

68 lines
No EOL
1.7 KiB
YAML

volumes:
database-data:
name: database-data
model-cache-data:
name: model-cache-data
networks:
traefik-net:
external: true
name: traefik-net
x-traefik: &x-traefiK
networks:
- traefik-net
- default
services:
immich-server:
image: ghcr.io/immich-app/immich-server:${IMMICH_VERSION:-release}
command: [ 'start.sh', 'immich' ]
volumes:
- ${UPLOAD_LOCATION}:/usr/src/app/upload
- /etc/localtime:/etc/localtime:ro
env_file:
- .env
<<: *x-traefiK
depends_on:
- redis
- database
deploy:
labels:
- traefik.enable=true
- traefik.docker.network=traefik-net
- traefik.http.routers.immich.rule=Host(`${EXTERNAL_HOST}`)
- traefik.http.routers.immich.entrypoints=${ENTRYPOINTS:-websecure}
- traefik.http.routers.immich.tls.certresolver=le
- traefik.http.services.immich.loadbalancer.server.port=3001
immich-microservices:
image: ghcr.io/immich-app/immich-server:${IMMICH_VERSION:-release}
command: [ 'start.sh', 'microservices' ]
volumes:
- ${UPLOAD_LOCATION}:/usr/src/app/upload
- /etc/localtime:/etc/localtime:ro
env_file:
- .env
depends_on:
- redis
- database
immich-machine-learning:
image: ghcr.io/immich-app/immich-machine-learning:${IMMICH_VERSION:-release}
volumes:
- model-cache-data:/cache
env_file:
- .env
redis:
image: redis:6.2-alpine
database:
image: tensorchord/pgvecto-rs:pg14-v0.2.0
environment:
POSTGRES_PASSWORD: ${DB_PASSWORD}
POSTGRES_USER: ${DB_USERNAME}
POSTGRES_DB: ${DB_DATABASE_NAME}
volumes:
- database-data:/var/lib/postgresql/data