2024-12-22 23:32:34 +00:00
services :
2025-02-05 12:45:50 +00:00
forgejo :
image : codeberg.org/forgejo/forgejo:9
container_name : forgejo
ports :
- "3000:3000"
- "222:22"
volumes :
- /mertz/forgejo:/data
jellyfin :
image : jellyfin/jellyfin
container_name : jellyfin
ports :
- "8096:8096"
volumes :
- /mertz/jellyfin/config:/config
- /mertz/jellyfin/cache:/cache
- /mertz/data/movies:/media
- /mertz/data/television:/media1
- /mertz/data/music:/media2
- /mertz/data/disney-films:/media3
restart : "unless-stopped"
registry :
image : registry:2
container_name : registry
ports :
- "5000:5000"
volumes :
- /mertz/registry:/var/lib/registry
caddy :
image : boulangermontrealais/barrios:caddy
container_name : caddy
ports :
- "80:80"
- "443:443"
volumes :
- /mertz/caddy/config:/config
- /mertz/caddy/data:/data
2025-04-27 13:31:28 +00:00
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}:/usr/src/app/upload
- /etc/localtime:/etc/localtime:ro
env_file :
- .env
ports :
- "2283:2283"
depends_on :
2025-04-27 18:28:36 +00:00
- immich-redis
2025-04-27 18:31:03 +00:00
- immich-postgres
2025-04-27 13:31:28 +00:00
restart : always
healthcheck :
disable : false
2025-04-27 18:28:36 +00:00
networks :
- immich
2025-04-27 13:31:28 +00:00
immich-machine-learning :
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://immich.app/docs/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 :
- /mertz/immich/model-cache:/cache
env_file :
- .env
restart : always
healthcheck :
disable : false
2025-04-27 18:28:36 +00:00
networks :
- immich
immich-redis :
container_name : immich-redis
2025-04-27 13:31:28 +00:00
image : docker.io/redis:6.2-alpine@sha256:148bb5411c184abd288d9aaed139c98123eeb8824c5d3fce03cf721db58066d8
healthcheck :
test : redis-cli ping || exit 1
restart : always
2025-04-27 18:28:36 +00:00
networks :
- immich
immich-postgres :
2025-04-27 13:31:28 +00:00
container_name : immich-postgres
image : docker.io/tensorchord/pgvecto-rs:pg14-v0.2.0@sha256:739cdd626151ff1f796dc95a6591b55a714f341c737e27f045019ceabf8e8c52
environment :
POSTGRES_PASSWORD : ${DB_PASSWORD}
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
healthcheck :
test : >-
pg_isready --dbname="$${POSTGRES_DB}" --username="$${POSTGRES_USER}" || exit 1; Chksum="$$(psql --dbname="$${POSTGRES_DB}" --username="$${POSTGRES_USER}" --tuples-only --no-align --command='SELECT COALESCE(SUM(checksum_failures), 0) FROM pg_stat_database')"; echo "checksum failure count is $$Chksum"; [ "$$Chksum" = '0' ] || exit 1
interval : 5m
start_interval : 30s
start_period : 5m
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
restart : always
2025-04-27 18:28:36 +00:00
networks :
- immich
networks :
immich :