Add scan_datastore_storage() to walk DATASTORE_PATH and categorize media by directory structure (movies/series/anime/kdrama/downloads/other) with size/file counts. Add raid_status() to parse /proc/mdstat and mdadm --detail for RAID level, active/failed devices, and recovery progress. Add /api/datastore endpoint with 15-minute cache for storage scans and live RAID updates. Install mdadm/util-linux/
31 lines
932 B
YAML
31 lines
932 B
YAML
services:
|
|
media-max:
|
|
build: .
|
|
container_name: media-max
|
|
restart: unless-stopped
|
|
ports:
|
|
- "8099:8099"
|
|
devices:
|
|
- "${RAID_DEVICE:-/dev/md127}:${RAID_DEVICE:-/dev/md127}"
|
|
extra_hosts:
|
|
- "host.docker.internal:host-gateway"
|
|
env_file:
|
|
- .env
|
|
volumes:
|
|
# Host-Pfad deiner Film-Library -> interner Dashboard-Pfad
|
|
- ${FILM_MEDIA_VOLUME}:/media/filme:ro
|
|
# Falls Sonarr verwendet wird, muss SERIES_MEDIA_VOLUME auf die Serien-Library zeigen.
|
|
- ${SERIES_MEDIA_VOLUME:-/nesflix/serien}:/media/serien:ro
|
|
# Read-only Datastore für Größen-/Kategorie-Scans.
|
|
- ${DATASTORE_HOST_PATH:-/nesflix}:/nesflix:ro
|
|
# Read-only Host-Devices für lsblk/smartctl; Media Max führt keine RAID-Schreiboperationen aus.
|
|
- /dev:/host-dev:ro
|
|
- ./data:/data
|
|
networks:
|
|
- media
|
|
|
|
networks:
|
|
media:
|
|
external: true
|
|
name: media-stack_default
|