services: immich-server: image: ghcr.io/immich-app/immich-server:${IMMICH_VERSION:-release} container_name: immich-server restart: unless-stopped env_file: - .env volumes: - /mnt/docker/immich/upload:/usr/src/app/upload depends_on: - redis networks: - infra-traefik_traefik-net labels: - "traefik.enable=true" - "traefik.http.routers.immich.rule=Host(`immich.ljh31.de`)" - "traefik.http.routers.immich.entrypoints=websecure" - "traefik.http.routers.immich.tls=true" - "traefik.http.routers.immich.tls.certresolver=letsencrypt" - "traefik.http.routers.immich.middlewares=error-404@file,error-500@file" - "traefik.http.services.immich.loadbalancer.server.port=2283" healthcheck: test: ["CMD", "curl", "-f", "http://localhost:2283/api/server/ping"] interval: 30s timeout: 5s retries: 3 immich-machine-learning: image: ghcr.io/immich-app/immich-machine-learning:${IMMICH_VERSION:-release} container_name: immich-machine-learning restart: unless-stopped env_file: - .env volumes: - /mnt/docker/immich/upload:/usr/src/app/upload networks: - infra-traefik_traefik-net redis: image: docker.io/redis:7.2-alpine container_name: redis restart: unless-stopped networks: - infra-traefik_traefik-net networks: infra-traefik_traefik-net: external: true