PLEXXX
A deliberately small container stack that prioritizes VPN isolation, operational visibility, and manual control instead of accumulating an entire automation ecosystem.
Problem
Media automation stacks can turn a simple request-download-review workflow into a web of tightly coupled services. PLEXXX asks how little infrastructure is actually required when metadata management and automatic library organization are not goals.
Constraints
- All acquisition traffic must remain isolated behind the VPN boundary.
- The VPN provider’s forwarded port must be propagated to the download client rather than configured statically.
- Indexer use remains manual and understandable; optional Discord interaction cannot become a runtime dependency.
- Completed media stays under human control instead of being silently moved through the library.
Architecture
- 01
Gluetun owns the network boundary and VPN lifecycle; qBittorrent shares that network context.
- 02
Prowlarr provides a compact indexer/search surface without requiring the broader *arr ecosystem.
- 03
A small coordination service synchronizes dynamic network state and exposes health without taking ownership of the media library.
- 04
Shared storage provides a simple hand-off point from acquisition to the existing library workflow.
Failures / lessons
- Container health and dependency graphs matter more than container count; a small stack can still fail opaquely without explicit checks.
- Dynamic port forwarding is state, not configuration. Treating it as static guarantees eventual drift.
- Optional integrations have to fail open. A missing chat token should disable chat, not restart the core service forever.