Files
docker-compose/immich/docker-compose.yml

93 lines
2.8 KiB
YAML

services:
immich_db:
container_name: immich_db
image: ghcr.io/immich-app/postgres:18-vectorchord0.5.3-pgvector0.8.1@sha256:4d69da6e90cbaae3ddca1cd244e717a6e421488aaaf4fb8264d46c617ac9b5a2
restart: unless-stopped
shm_size: 128mb
environment:
- POSTGRES_DB=${DB_DATABASE_NAME}
- POSTGRES_USER=${DB_USERNAME}
- POSTGRES_PASSWORD=${DB_PASSWORD}
- POSTGRES_INITDB_ARGS='--data-checksums'
- PGDATA=/var/lib/postgresql/18/docker
volumes:
- ${DB_PATH}:/var/lib/postgresql
networks:
- backend
healthcheck:
test: ["CMD-SHELL", "pg_isready -d ${DB_DATABASE_NAME} -U ${DB_USERNAME}"]
interval: 10s
timeout: 5s
retries: 3
start_period: 10s
immich_valkey:
container_name: immich_valkey
image: ghcr.io/valkey-io/valkey:9.0.1@sha256:546304417feac0874c3dd576e0952c6bb8f06bb4093ea0c9ca303c73cf458f63
restart: unless-stopped
networks:
- backend
healthcheck:
test: ["CMD-SHELL", "valkey-cli ping | grep PONG"]
interval: 10s
timeout: 5s
retries: 3
start_period: 10s
immich_server:
container_name: immich_server
image: ghcr.io/immich-app/immich-server:v2.4.1@sha256:e6a6298e67ae077808fdb7d8d5565955f60b0708191576143fc02d30ab1389d1
restart: unless-stopped
depends_on:
immich_db:
condition: service_healthy
immich_valkey:
condition: service_healthy
# env_file:
# - .env
environment:
- DB_DATABASE_NAME=${DB_DATABASE_NAME}
- DB_USERNAME=${DB_USERNAME}
- DB_PASSWORD=${DB_PASSWORD}
- DB_HOSTNAME=${DB_HOSTNAME}
- REDIS_HOSTNAME=${REDIS_HOSTNAME}
volumes:
- ${UPLOAD_LOCATION}:/data
- /etc/localtime:/etc/localtime:ro
# - ${PHOTOS_PATH_1}:/usr/src/app/external/${USER_1}/photos:ro
# - ${VIDEOS_PATH_1}:/usr/src/app/external/${USER_1}/videos:ro
# - ${PHOTOS_PATH_2}:/usr/src/app/external/${USER_2}/photos:ro
# - ${VIDEOS_PATH_2}:/usr/src/app/external/${USER_2}/videos:ro
ports:
- ${WebGUI_PORT}:2283
networks:
- frontend
- backend
healthcheck:
disable: false
immich_machine_learning:
container_name: immich_machine_learning
image: ghcr.io/immich-app/immich-machine-learning:v2.4.1@sha256:b3deefd1826f113824e9d7bc30d905e7f823535887d03f869330946b6db3b44a
restart: unless-stopped
# env_file:
# - .env
environment:
- DB_DATABASE_NAME=${DB_DATABASE_NAME}
- DB_USERNAME=${DB_USERNAME}
- DB_PASSWORD=${DB_PASSWORD}
- DB_HOSTNAME=${DB_HOSTNAME}
- REDIS_HOSTNAME=${REDIS_HOSTNAME}
volumes:
- ${CACHE_PATH}:/cache
networks:
- backend
healthcheck:
disable: false
networks:
frontend:
external: true
backend:
external: true