networks: immich: external: false caddy: name: caddy driver: bridge external: true services: immich-server: container_name: immich_server image: ghcr.io/immich-app/immich-server:v3 labels: - "com.centurylinklabs.watchtower.enable=true" 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 depends_on: - redis - database networks: - immich - caddy deploy: resources: limits: cpus: "1.5" memory: 1G restart: unless-stopped healthcheck: disable: false logging: driver: "json-file" options: max-size: "100m" max-file: "3" immich-machine-learning: container_name: immich_machine_learning image: ghcr.io/immich-app/immich-machine-learning:release labels: - "com.centurylinklabs.watchtower.enable=true" volumes: - model-cache:/cache env_file: - .env networks: - immich # deploy: # resources: # limits: # cpus: "1" # memory: 600M restart: unless-stopped healthcheck: disable: false logging: driver: "json-file" options: max-size: "100m" max-file: "3" redis: container_name: immich_redis image: docker.io/valkey/valkey:9@sha256:4963247afc4cd33c7d3b2d2816b9f7f8eeebab148d29056c2ca4d7cbc966f2d9 networks: - immich healthcheck: test: redis-cli ping || exit 1 restart: unless-stopped logging: driver: "json-file" options: max-size: "100m" max-file: "3" 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} POSTGRES_USER: ${DB_USERNAME} POSTGRES_DB: ${DB_DATABASE_NAME} POSTGRES_INITDB_ARGS: "--data-checksums" networks: - immich 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 shm_size: 128mb restart: unless-stopped logging: driver: "json-file" options: max-size: "100m" max-file: "3" volumes: model-cache: