name: immich services: 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: # 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 env_file: - .env secrets: - DB_PASSWORD_FILE expose: - 2283 depends_on: - redis - database restart: unless-stopped healthcheck: disable: false cpus: 4 mem_limit: 6g redis: container_name: immich_redis image: docker.io/valkey/valkey:8-bookworm@sha256:42cba146593a5ea9a622002c1b7cba5da7be248650cbb64ecb9c6c33d29794b1 restart: unless-stopped healthcheck: test: redis-cli ping || exit 1 database: container_name: immich_postgres image: ghcr.io/immich-app/postgres:14-vectorchord0.4.3 environment: POSTGRES_PASSWORD_FILE: /run/secrets/DB_PASSWORD_FILE POSTGRES_USER: ${DB_USERNAME} POSTGRES_DB: ${DB_DATABASE_NAME} POSTGRES_INITDB_ARGS: '--data-checksums' volumes: # 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 secrets: - DB_PASSWORD_FILE restart: unless-stopped secrets: DB_PASSWORD_FILE: file: ./secrets/POSTGRES_PASSWORD volumes: model-cache: networks: default: name: caddy_net external: true