| Source | Destination | Purpose | Notes |
| External request user | Caddy | Public HTTPS entry for request app | UniFi forwards public 80/443 to Synology 8088/8443. |
| Caddy | Seerr | Reverse proxy to request app | Direct public Seerr app-port exposure should stay disabled. |
| Seerr | Plex | User/media/request integration | Seerr replaced Overseerr; legacy Overseerr is stopped. |
| Seerr | Sonarr/Radarr | Create and track approved requests | Anime request behavior needs careful testing before broad user rollout. |
| Sonarr/Radarr/Lidarr | Prowlarr | Indexer coordination | Recyclarr currently applied only to selected Sonarr profiles. |
| Prowlarr | NZBHydra2 | Meta-search/indexer layer | NZBHydra2 remains LAN-only. |
| Sonarr/Radarr/Lidarr | NZBGet | Usenet downloads | NZBGet post-processing should be watched after config changes. |
| Sonarr/Radarr/Lidarr | qBittorrent | Torrent downloads | qBittorrent uses Gluetun network namespace. |
| qBittorrent | Gluetun | VPN transport | Avoid VPN/port changes while qBittorrent is connectable. |
| Plex | /volume1/data/media | Reads media libraries | Buffering is currently treated as likely Volume1/storage-pressure related while the rebuild migration is underway. |
| Tautulli | Plex | Playback/session history and activity | Used for Plex dashboards and investigations. |
| Tdarr server | /volume1/data/media | Scans/transcode library source | Personal media is never a Tdarr target. |
| Desktop Tdarr node | Tdarr server and mapped shares | GPU transcodes and health checks | Worker count affects desktop/storage pressure. |
| Homepage | Internal VHNIC apps and Grafana dashboards | Primary internal portal / launchpad | Replaced Homarr on 2026-06-03; appdata/project moved to Volume5; internal only. |
| Audiobookshelf | /volume1/data/media/audiobooks/books | Audiobook library/player | Candidate for future Caddy exposure for ShelfPlayer. |
| ReadAIrr | Retired audiobook automation trial | Historical only | Removed from active runtime/monitoring on 2026-06-14 after repeated expensive rescans and bad imports. |
| Kavita | /volume1/data/media/books | Ebook/comic/manhwa reader | Appdata is on Volume5, but scans still read Volume1 until reading media is moved or mirrored. |
| Mylar3 | /volume1/data/media/books/comics, /manhwa | Comic/manhwa management candidate | Appdata is on Volume5; media still lives on Volume1. Do not connect acquisition automation until reviewed. |
| Prometheus | Exporters | Metrics scrape | Runs on Volume 5 with Grafana and Alertmanager. |
| Grafana | Prometheus | Dashboard queries | Internal only for now. |
| Alertmanager | Discord bridge | Warning notifications | Info alerts are dashboard-only. |
DNS And Infrastructure Services
flowchart LR
Clients["LAN clients"]
Pi4["PiHolePi4\n10.0.0.195"]
Pi4B["PiHole4B\n10.0.0.132"]
Upstreams["Built-in upstream providers\ncurrently multiple enabled\nsimplification postponed"]
UniFi["UniFi UDM SE\nDHCP advertises Pi-holes"]
CloudDNS["Google Cloud DNS\npublic zone ravick5.com"]
NAS["Synology services"]
UniFi -. DHCP DNS options .-> Clients
Clients --> Pi4
Clients --> Pi4B
Pi4 --> Upstreams
Pi4B --> Upstreams
CloudDNS --> NAS
Storage Placement
flowchart TB
V1["Volume 1\nLarge HDD RAID6 media/data\n/volume1"]
V2["Volume 2\nSSD mirror\n/volume2\nretained rollback data"]
V3["Volume 3\nSSD mirror\n/volume3\nPlex/Tautulli appdata"]
V4["Volume 4\nDX1222 temporary RAID6/Btrfs\n/volume4"]
V5["Volume5 SSD role\nDX1222 SSD mirror\ncurrent docs: /volume2/docker-v5\nDSM display path needs verification"]
V1 --> Media["Media libraries\n/data/media"]
V1 --> AudioBooks["Audiobooks\n/data/media/audiobooks/books"]
V1 --> EBooks["Ebooks\n/data/media/books"]
V1 --> ReadingLibraries["Reading libraries\nbooks root, books/comics, books/manhwa"]
V1 --> DockerV1["Most container appdata\n/volume1/docker"]
V1 --> Torrents["Torrent data\n/volume1/data/torrents"]
V1 -. "evacuating before recreate" .-> V4
V2 --> OldPlexData["Old Plex appdata\nrollback only"]
V2 --> OldTdarrData["Old Tdarr data\nrollback only"]
V3 --> PlexData["Plex appdata\n/volume3/docker/plex"]
V3 --> TautulliData["Tautulli appdata\n/volume3/docker/tautulli"]
V5 --> DockerV5["Most non-Plex active appdata/projects/secrets\n/volume2/docker-v5"]
V5 --> DownloadsV5["Planned download staging\n/volume2/downloads-v5"]
V5 --> StagingV5["Import/staging scratch\n/volume2/staging-v5"]
V5 --> ReadingCandidate["Possible future reading media\npath needs verification"]
V4 --> MigrationRoot["Temporary migration root\n/volume4/migration-from-volume1"]
Notes And Risks
- Seerr replaced Overseerr on 2026-05-24. The public request-app path now uses
Caddy instead of direct app-port exposure.
- qBittorrent is routed through Gluetun and bound to
tun0; current user
preference is to avoid VPN/port changes while it is connectable.
- NZBHydra2 remains LAN-only and does not need Gluetun by default.
- Observability now runs from Volume 5 and is intentionally non-critical.
- Audiobookshelf appdata runs on Volume 5, while audiobook media remains on
Volume 1. ReadAIrr and ReadAIrr Postgres were retired from active runtime and
monitoring on 2026-06-14.
- Kavita and Mylar3 appdata are assigned to Volume 5, while ebook/comic/manhwa
libraries remain on Volume 1. If Kavita scans are suspected of adding Volume1
pressure, move or one-way mirror the reading libraries to a Volume5 canonical
root before repointing the stack.
- Volume 1 is being evacuated to temporary DX1222 Volume 4 after Synology
Support reported likely memory-related bit flip corruption history. Do not
treat /volume4/migration-from-volume1 as disposable cleanup data.
- Homepage is the primary internal portal at
http://10.0.0.119:7576 and
should not be exposed publicly without VPN/overlay or MFA/SSO planning.
- Bazarr was retired from
media-project on 2026-06-14 after repeated noise
and no clear operational value. Its old scripts/runbooks remain historical
reference only.
- Anime automation is partially improved but still a future tuning area.
- PiHole4B replaced the legacy PiHoleEx hardware on 2026-06-13 while keeping
the same secondary DNS IP.
- Follow-up: verify DSM's displayed Volume5 name/number versus the
/volume2/docker-v5 path before retiring old Volume2/VM Storage references.
Open Follow-Ups
- Confirm appdata backup plan and destination.
- Verify Pi-hole scheduled backups.
- Review qBittorrent/Gluetun optional services later.
- Recapture Tdarr after the 2026-06-11 finish-out queue drains; Anime remains a
custom-profile pilot, not a normal cloned rollout.
- Add deeper Pi-hole, UniFi, and desktop Tdarr worker metrics if useful.