name: immich services: immich-server: container_name: immich_server image: ghcr.io/immich-app/immich-server:release env_file: - /root/immich/server.env volumes: - /mnt/synology/Immich/:/data:rw - /etc/localtime:/etc/localtime:ro ports: - "2283:2283" depends_on: redis: condition: service_healthy database: condition: service_healthy restart: always healthcheck: test: ["CMD-SHELL", "curl -fsS http://127.0.0.1:2283/server-info || curl -fsS http://127.0.0.1:2283/api/server-info || exit 1"] interval: 30s timeout: 5s retries: 5 start_period: 30s immich-machine-learning: container_name: immich_machine_learning image: ghcr.io/immich-app/immich-machine-learning:release env_file: - /root/immich/machine-learning.env volumes: - /root/immich/model-cache:/cache restart: always redis: container_name: immich_redis image: docker.io/valkey/valkey:8-alpine restart: always healthcheck: test: ["CMD-SHELL", "valkey-cli -h 127.0.0.1 ping | grep -q PONG"] interval: 10s timeout: 5s retries: 5 start_period: 5s database: container_name: immich_db image: ghcr.io/immich-app/postgres:14-vectorchord0.4.3-pgvectors0.2.0 env_file: - /root/immich/postgres.env volumes: - /root/immich/db-data:/var/lib/postgresql/:rw shm_size: 128mb restart: always healthcheck: test: ["CMD-SHELL", "pg_isready -U ${POSTGRES_USER:-postgres} -d ${POSTGRES_DB:-postgres} -h 127.0.0.1"] interval: 10s timeout: 5s retries: 10 start_period: 20s