version: '3.8' services: immich-server: container_name: immich_server image: ghcr.io/immich-app/immich-server:release volumes: - ${UPLOAD_LOCATION}:/usr/src/app/upload - /etc/localtime:/etc/localtime:ro - /volume1/immich:/mnt/media:ro environment: DB_HOSTNAME: ${DB_HOSTNAME} DB_USERNAME: ${DB_USERNAME} DB_PASSWORD: ${DB_PASSWORD} DB_DATABASE_NAME: ${DB_DATABASE_NAME} REDIS_HOSTNAME: ${REDIS_HOSTNAME} LOG_LEVEL: ${LOG_LEVEL} TZ: ${TZ} ports: - 2283:2283 depends_on: - redis - database restart: always networks: - immich immich-machine-learning: container_name: immich_machine_learning image: ghcr.io/immich-app/immich-machine-learning:release volumes: - model-cache:/cache environment: DB_HOSTNAME: ${DB_HOSTNAME} DB_USERNAME: ${DB_USERNAME} DB_PASSWORD: ${DB_PASSWORD} DB_DATABASE_NAME: ${DB_DATABASE_NAME} REDIS_HOSTNAME: ${REDIS_HOSTNAME} LOG_LEVEL: ${LOG_LEVEL} TZ: ${TZ} restart: always networks: - immich redis: container_name: immich_redis image: redis:6.2-alpine restart: always networks: - immich database: container_name: immich_postgres image: tensorchord/pgvecto-rs:pg16-v0.2.1 environment: POSTGRES_PASSWORD: ${DB_PASSWORD} POSTGRES_USER: ${DB_USERNAME} POSTGRES_DB: ${DB_DATABASE_NAME} POSTGRES_INITDB_ARGS: '--data-checksums' volumes: - pgdata:/var/lib/postgresql/data restart: always networks: - immich volumes: pgdata: model-cache: networks: immich: driver: bridge