plex: Media/ cache lives on the 3TB ext4 disk from day one, not the SSD
Bind mount is now active, not a commented Phase-2 option — Mike's call 2026-07-31 (337 GB is too large for the SSD). Quick Sync confirmed as the transcode device; NAS account is read-only on the library shares.
This commit is contained in:
+23
-20
@@ -28,8 +28,11 @@ services:
|
|||||||
# Claiming would create a NEW server identity and throw that away.
|
# Claiming would create a NEW server identity and throw that away.
|
||||||
|
|
||||||
devices:
|
devices:
|
||||||
# Quick Sync on the UHD 630. No session cap and better HDR tone mapping
|
# Quick Sync on the UHD 630 — DECIDED 2026-07-31. No session cap and
|
||||||
# than the Pascal-era NVENC on the 1070.
|
# better HDR tone mapping than the Pascal-era NVENC on the 1070, and the
|
||||||
|
# i915 driver lives in the kernel, so nothing breaks on updates. The
|
||||||
|
# GTX 1070 stays free for other work. Requires the BIOS iGPU
|
||||||
|
# Multi-Monitor toggle or /dev/dri does not exist.
|
||||||
- /dev/dri:/dev/dri
|
- /dev/dri:/dev/dri
|
||||||
|
|
||||||
group_add:
|
group_add:
|
||||||
@@ -39,36 +42,36 @@ services:
|
|||||||
- "${RENDER_GID:-993}"
|
- "${RENDER_GID:-993}"
|
||||||
|
|
||||||
volumes:
|
volumes:
|
||||||
# ---- Plex data directory -------------------------------------------
|
# ---- Plex data directory (SSD): database + Metadata, NOT Media/ -------
|
||||||
# Whole directory on the SSD: database, Metadata/ (25 GB of posters) and
|
# The SQLite database is the most latency-sensitive thing on the box and
|
||||||
# Media/ (337 GB of migrated preview cache). ~364 GB in ~440 GB usable.
|
# belongs on flash. Metadata/ (25 GB of posters) rides along. The 337 GB
|
||||||
# Fully supported layout — no split, no bind-mount trickery.
|
# Media/ preview cache does NOT — see the bind below.
|
||||||
- type: bind
|
- type: bind
|
||||||
source: /srv/plex/config
|
source: /srv/plex/config
|
||||||
target: /config
|
target: /config
|
||||||
|
|
||||||
# ---- PHASE 2 (post-soak, optional) ----------------------------------
|
# ---- Preview/thumbnail cache on the 3 TB ext4 disk — NOT the SSD ------
|
||||||
# Relocate the 337 GB preview cache to the 3 TB ext4 disk so future
|
# Mike's call 2026-07-31: 337 GB is too large for the 500 GB SSD, so
|
||||||
# thumbnail growth (~28 MB per content-hour) stops consuming the SSD.
|
# Media/ lives on /srv/data (the former D:, now ext4) from day one.
|
||||||
# Long-form syntax deliberately: the target path contains spaces, which
|
# Long-form syntax deliberately: the target path contains spaces, which
|
||||||
# the short "a:b" form handles badly. Docker orders mounts by target
|
# the short "a:b" form handles badly. Docker orders mounts by target
|
||||||
# depth, so this correctly lands inside the /config mount above.
|
# depth, so this correctly lands inside the /config mount above.
|
||||||
#
|
#
|
||||||
# Plex does NOT support relocating this directory. Enable it only after
|
# Plex does NOT support relocating this directory natively — this bind
|
||||||
# running scripts/60-media-relocate.sh, which performs the move and then
|
# mount is the mechanism. After first start, force thumbnail generation
|
||||||
# forces thumbnail generation on a single title to prove that writes
|
# on one title to prove writes succeed across the filesystem boundary
|
||||||
# succeed across the filesystem boundary. Rollback is moving it back.
|
# (EXDEV) — that failure mode can only be tested, not reasoned about.
|
||||||
#
|
- type: bind
|
||||||
# - type: bind
|
source: /srv/data/plex-media
|
||||||
# source: /srv/data/plex-media
|
target: /config/Library/Application Support/Plex Media Server/Media
|
||||||
# target: /config/Library/Application Support/Plex Media Server/Media
|
|
||||||
|
|
||||||
# ---- NAS media, mounted at the SAME paths the database stores -------
|
# ---- NAS media, mounted at the SAME paths the database stores ---------
|
||||||
# The remap rewrites \\korval\X -> /mnt/nas/X, so the container must see
|
# The remap rewrites \\korval\X -> /mnt/nas/X, so the container must see
|
||||||
# exactly /mnt/nas/X. Six separate entries rather than one bind of
|
# exactly /mnt/nas/X. Six separate entries rather than one bind of
|
||||||
# /mnt/nas, because a plain bind does not carry the submounts beneath it.
|
# /mnt/nas, because a plain bind does not carry the submounts beneath it.
|
||||||
# Read-only: Plex has no reason to write to the library, and the NAS
|
# Read-only here AND at the mount AND at the Synology — the mediabox NAS
|
||||||
# account is read-write.
|
# account has no write permission on the library shares. media_pc (the
|
||||||
|
# box's write share) is deliberately not exposed to Plex.
|
||||||
- type: bind
|
- type: bind
|
||||||
source: /mnt/nas/media
|
source: /mnt/nas/media
|
||||||
target: /mnt/nas/media
|
target: /mnt/nas/media
|
||||||
|
|||||||
Reference in New Issue
Block a user