Files
codeandClaude Fable 5 8ab413804a normalize all stacks to conventions
- VOL_PATH always defaults to /data; vscode/opencode VOL_PROJECTS nests it
- TZ defaults to America/Vancouver (was UTC in etherpad, ntfy, redis)
- compose section order fixed (volumes before environment, command after networks)
- all default secrets are the literal ChangeThisPassword (grep-friendly,
  users must change them); removed a real key from ollama sample.env
- sample.env synced with compose: missing vars added with defaults, dead vars removed
- invoiceninja_dev/openarchiver_dev: app services had no environment block,
  wired all sample.env vars through so the stacks actually work
- opencode: sample.env OLLAMA_HOST renamed to OLLAMA_HOST_URL to match compose
- TZ values unquoted consistently

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-16 06:24:54 +00:00

70 lines
2.5 KiB
YAML

services:
immich-server:
image: ${IMMICH_IMAGE:-ghcr.io/immich-app/immich-server:release}
restart: ${IMMICH_RESTART:-unless-stopped}
# extends:
# file: hwaccel.transcoding.yml
# service: cpu # set to one of [nvenc, quicksync, rkmpp, vaapi, vaapi-wsl] for accelerated transcoding
volumes:
- ${VOL_PATH:-/data}/immich/upload:/usr/src/app/upload
- ${VOL_PATH:-/data}/immich/import:/import
- /etc/localtime:/etc/localtime:ro
environment:
- REDIS_HOSTNAME=immich-redis
- DB_HOSTNAME=immich-postgres
- DB_PASSWORD=${IMMICH_DB_PASSWORD:-ChangeThisPassword}
- DB_USERNAME=${IMMICH_DB_USERNAME:-postgres}
- DB_DATABASE_NAME=${IMMICH_DB_DATABASE_NAME:-immich}
ports:
- "${IMMICH_PORT:-8000}:2283"
networks:
- proxy
- immich_internal
depends_on:
- immich-redis
- immich-postgres
immich-machine-learning:
# For hardware acceleration, add one of -[armnn, cuda, openvino] to the image tag.
# Example tag: ghcr.io/immich-app/immich-machine-learning:release-cuda
image: ${IMMICH_ML_IMAGE:-ghcr.io/immich-app/immich-machine-learning:release}
restart: ${IMMICH_RESTART:-unless-stopped}
# extends: # uncomment this section for hardware acceleration - see https://immich.app/docs/features/ml-hardware-acceleration
# file: hwaccel.ml.yml
# service: cpu # set to one of [armnn, cuda, openvino, openvino-wsl] for accelerated inference - use the `-wsl` version for WSL2 where applicable
volumes:
- ${VOL_PATH:-/data}/immich/model-cache:/cache
networks:
- immich_internal
immich-redis:
image: ${REDIS_IMAGE:-redis:6.2.19-alpine}
restart: ${IMMICH_RESTART:-unless-stopped}
networks:
- immich_internal
immich-postgres:
image: ${POSTGRES_IMAGE:-tensorchord/pgvecto-rs:pg14-v0.2.0}
restart: ${IMMICH_RESTART:-unless-stopped}
volumes:
- ${VOL_PATH:-/data}/immich/postgres:/var/lib/postgresql/data
environment:
- POSTGRES_PASSWORD=${IMMICH_DB_PASSWORD:-ChangeThisPassword}
- POSTGRES_USER=${IMMICH_DB_USERNAME:-postgres}
- POSTGRES_DB=${IMMICH_DB_DATABASE_NAME:-immich}
- POSTGRES_INITDB_ARGS=--data-checksums
networks:
- immich_internal
command: >-
postgres
-c shared_preload_libraries=vectors.so
-c 'search_path="$$user", public, vectors'
-c logging_collector=on
-c max_wal_size=2GB
-c shared_buffers=512MB
-c wal_compression=on
networks:
immich_internal:
driver: bridge
proxy:
external: true