diff --git a/immich/docker-compose.yml b/immich/docker-compose.yml index 4c75c54..86fa7b6 100644 --- a/immich/docker-compose.yml +++ b/immich/docker-compose.yml @@ -1,57 +1,63 @@ services: - immich-server: - image: ghcr.io/immich-app/immich-server:release - container_name: immich-server + container_name: immich_server + image: ghcr.io/immich-app/immich-server:${IMMICH_VERSION:-release} + # extends: + # file: hwaccel.transcoding.yml + # service: cpu # set to one of [nvenc, quicksync, rkmpp, vaapi, vaapi-wsl] for accelerated transcoding volumes: - - ${UPLOAD_LOCATION:-./immich_upload}:/usr/src/app/upload + # Do not edit the next line. If you want to change the media storage location on your system, edit the value of UPLOAD_LOCATION in the .env file + - ${UPLOAD_LOCATION}:/data - /etc/localtime:/etc/localtime:ro - environment: - NODE_ENV: ${NODE_ENV:-production} - DB_HOST: immich-database - DB_PORT: ${DB_PORT:-5432} - DB_USERNAME: ${DB_USERNAME:-immich} - DB_PASSWORD: ${DB_PASSWORD:-immich} - DB_DATABASE_NAME: ${DB_DATABASE_NAME:-immich} - REDIS_HOSTNAME: ${REDIS_HOSTNAME:-immich-redis} - REDIS_PORT: ${REDIS_PORT:-6379} - JWT_SECRET: ${JWT_SECRET:-changemeplease} - expose: - - 2283 + env_file: + - .env + ports: + - '2283:2283' depends_on: - - immich-redis - - immich-database - restart: unless-stopped + - redis + - database + restart: always + healthcheck: + disable: false immich-machine-learning: - image: ghcr.io/immich-app/immich-machine-learning:release - container_name: immich-ml + container_name: immich_machine_learning + # For hardware acceleration, add one of -[armnn, cuda, rocm, openvino, rknn] to the image tag. + # Example tag: ${IMMICH_VERSION:-release}-cuda + image: ghcr.io/immich-app/immich-machine-learning:${IMMICH_VERSION:-release} + # extends: # uncomment this section for hardware acceleration - see https://docs.immich.app/features/ml-hardware-acceleration + # file: hwaccel.ml.yml + # service: cpu # set to one of [armnn, cuda, rocm, openvino, openvino-wsl, rknn] for accelerated inference - use the `-wsl` version for WSL2 where applicable volumes: - - ${UPLOAD_LOCATION:-./immich_upload}:/usr/src/app/upload - model-cache:/cache - environment: - NODE_ENV: ${NODE_ENV:-production} - restart: unless-stopped + env_file: + - .env + restart: always + healthcheck: + disable: false - immich-redis: - image: valkey/valkey:latest - container_name: immich-redis - restart: unless-stopped + redis: + container_name: immich_redis + image: docker.io/valkey/valkey:8@sha256:81db6d39e1bba3b3ff32bd3a1b19a6d69690f94a3954ec131277b9a26b95b3aa healthcheck: test: redis-cli ping || exit 1 + restart: always - immich-database: - image: ghcr.io/immich-app/postgres:16-vectorchord0.3.0-pgvectors0.3.0 - container_name: immich-database + database: + container_name: immich_postgres + image: ghcr.io/immich-app/postgres:14-vectorchord0.4.3-pgvectors0.2.0@sha256:bcf63357191b76a916ae5eb93464d65c07511da41e3bf7a8416db519b40b1c23 environment: - POSTGRES_PASSWORD: ${DB_PASSWORD:-immich} - POSTGRES_USER: ${DB_USERNAME:-immich} - POSTGRES_DB: ${DB_DATABASE_NAME:-immich} + POSTGRES_PASSWORD: ${DB_PASSWORD} + POSTGRES_USER: ${DB_USERNAME} + POSTGRES_DB: ${DB_DATABASE_NAME} POSTGRES_INITDB_ARGS: '--data-checksums' - PG_DATA: /var/lib/postgresql/data + # Uncomment the DB_STORAGE_TYPE: 'HDD' var if your database isn't stored on SSDs + # DB_STORAGE_TYPE: 'HDD' volumes: - - ${DB_DATABASE_LOCATION:-./immich_db}:/var/lib/postgresql/data - restart: unless-stopped + # Do not edit the next line. If you want to change the database storage location on your system, edit the value of DB_DATA_LOCATION in the .env file + - ${DB_DATA_LOCATION}:/var/lib/postgresql/data + shm_size: 128mb + restart: always volumes: - model-cache: + model-cache: \ No newline at end of file