# stack for immich >= v1.88.0 <= 1.91.0 version: "3.8" services: immich-server: container_name: immich-server image: altran1502/immich-server:release command: [ "start.sh", "immich" ] volumes: - ${UPLOAD_LOCATION}:/usr/src/app/upload - /etc/localtime:/etc/localtime:ro env_file: - .env environment: - NODE_ENV=production ports: - 2283:3001 expose: - 3001 depends_on: - immich-redis - immich-database - immich-typesense restart: unless-stopped #networks: # - proxy #labels: # - traefik.enable=false # - traefik.http.routers.immich.rule=Host(`immich.example.com`) # - traefik.http.services.immich.loadbalancer.server.port=3001 # - traefik.docker.network=proxy # # Part for local lan services only # - traefik.http.routers.immich.middlewares=local-ipwhitelist@file # - "com.centurylinklabs.watchtower.enable=true" immich-microservices: container_name: immich-microservices image: altran1502/immich-server:release command: [ "start.sh", "microservices" ] volumes: - ${UPLOAD_LOCATION}:/usr/src/app/upload - /etc/localtime:/etc/localtime:ro env_file: - .env environment: - NODE_ENV=production depends_on: - immich-redis - immich-database - immich-typesense restart: unless-stopped #labels: # - "com.centurylinklabs.watchtower.enable=true" #networks: # - proxy immich-typesense: container_name: immich-typesense hostname: typesense image: typesense/typesense:0.24.1 environment: - TYPESENSE_API_KEY=${TYPESENSE_API_KEY} - TYPESENSE_DATA_DIR=/data # remove this to get debug messages - GLOG_minloglevel=1 volumes: - ${TYPESENSE_LOCATION}:/data restart: unless-stopped #labels: # - "com.centurylinklabs.watchtower.enable=true" #networks: # - proxy immich-machine-learning: image: altran1502/immich-machine-learning:release container_name: immich-ml volumes: - ${UPLOAD_LOCATION}:/usr/src/app/upload - model-cache:/cache env_file: - .env environment: - NODE_ENV=production restart: unless-stopped #labels: # - "com.centurylinklabs.watchtower.enable=true" #networks: # - proxy immich-redis: container_name: immich-redis image: redis:6.2-alpine restart: unless-stopped #labels: # - "com.centurylinklabs.watchtower.enable=true" #networks: # - proxy immich-database: container_name: immich-database image: postgres:14-alpine env_file: - .env environment: POSTGRES_PASSWORD: ${DB_PASSWORD} POSTGRES_USER: ${DB_USERNAME} POSTGRES_DB: ${DB_DATABASE_NAME} PG_DATA: /var/lib/postgresql/data volumes: - ${DB_DATABASE_LOCATION}:/var/lib/postgresql/data restart: unless-stopped #labels: # - "com.centurylinklabs.watchtower.enable=true" #networks: # - proxy volumes: model-cache: #networks: # proxy: # external: true