version: "3" services: immich_server: container_name: immich-server image: ghcr.io/immich-app/immich-server:release command: [ "start.sh", "immich" ] environment: - DB_HOSTNAME=immich-postgres - DB_USERNAME= - DB_PASSWORD= - DB_DATABASE_NAME=immich - REDIS_HOSTNAME=immich-redis - TYPESENSE_API_KEY= volumes: - /Photos:/usr/src/app/upload ports: - 2283:3001 depends_on: - redis - database - typesense restart: unless-stopped immich_microservices: container_name: immich-microservices image: ghcr.io/immich-app/immich-server:release command: [ "start.sh", "microservices" ] environment: - DB_HOSTNAME=immich-postgres - DB_USERNAME= - DB_PASSWORD= - DB_DATABASE_NAME=immich - REDIS_HOSTNAME=immich-redis - TYPESENSE_API_KEY= volumes: - /Photos:/usr/src/app/upload depends_on: - redis - database - typesense restart: unless-stopped immich_ml: container_name: immich-ml image: ghcr.io/immich-app/immich-machine-learning:release volumes: - /immich/model-cache:/cache restart: unless-stopped typesense: container_name: immich-typesense image: typesense/typesense:0.24.1@sha256:9bcff2b829f12074426ca044b56160ca9d777a0c488303469143dd9f8259d4dd environment: - TYPESENSE_API_KEY= - TYPESENSE_DATA_DIR=/data - GLOG_minloglevel=1 volumes: - /immich/typesense:/data restart: unless-stopped redis: container_name: immich-redis image: redis:6.2-alpine@sha256:80cc8518800438c684a53ed829c621c94afd1087aaeb59b0d4343ed3e7bcf6c5 restart: unless-stopped database: container_name: immich-postgres image: postgres:14-alpine@sha256:50d9be76e9a90da4c781554955e0ffc79d9d5c4226838e64b36aacc97cbc35ad environment: POSTGRES_PASSWORD: POSTGRES_USER: POSTGRES_DB: volumes: - /immich/postgres:/var/lib/postgresql/data restart: unless-stopped