Inspired by Ben Balter's blog posts and his repository benbalter/pi-hole-cloudflared-docker-compose-ansible-caddy and https://github.com/sebgl/htpc-download-box
flowchart TD
subgraph HTPC/Download Server
subgraph *arrs
direction TB
S[Sonarr]
R[Radarr]
end
*arrs-->J
*arrs-->TM[Transmission]
TM-->O[Wireguard\nClient]
TM-.->D[Download\ndirectory]
D<-.->L[Library\ndirectory]
P[Plex Media\nServer]-->L
*arrs-.-> L & D
PTS[plextraktsync]-->P
PMM[plex-meta-manager]-->P
TAUT[Tautulli]-->P
BARR[Bazarr]-->*arrs
U[Unpackerr]-->*arrs
end
J[Jackett]-->T[Torrent\nindexers]
O-->V[VPN Server]
V-->B[Bittorrent\nPeers]
subgraph media metadata
PTS-->TR[Trakt.tv]
PMM-->TR
PMM-->RT[Rotten\nTomatoes]
PMM-->IMDB[IMDb]
PMM-->*arrs
PMM-->TMDB[tMDB]
end
subgraph subtitle providers
BARR-->OS[Opensubtitles]
BARR-->addic7ed
BARR-->subscene
BARR-->podnapisi
end
subgraph other
AH[AdGuard\nHome]
H[Huginn]
HA[Home\nAssistant]
C[Caddy]
W[Watchtower]
PG[Postgres]
H-->PG
end
W-->DISCORD[Discord]
C-->AH
C-->HA
C-->P
C-->J
C-->R
C-->S
C-->TM
C-->BARR
C-->H
C-->TAUT
linkStyle 3,4,5,6,7 stroke:blue;
classDef internet stroke:#f66;
classDef folder stroke:blue,fill:none,stroke-dasharray: 5 5;
class L,D folder
class T,V,B,TR,RT,IMDB,OS,addic7ed,subscene,podnapisi,DISCORD,TMDB internet
- Adguard Home - self-hosted DNS server with ad-blocking
- Plex Media Server - connects to my Synology NAS and hosts database
- PlexTraktSync - syncs library and watch status to Trakt.tv
- Plex Meta Manager - maintains Plex collections and playlists from configuration files
- Tautulli - UI to monitor Plex statistics
- Home Assistant - integrates all my IoT devices
- Transmission - torrent client used by Radarr and Sonarr to fetch media
- Radarr - monitor & download movies
- Sonarr - monitor & download TV shows
- Lidarr - monitor & download albums
- Bazarr - fetch subtitles for Sonarr and Radarr
- Jackett - proxy supporting private torrent tracker integration with Radarr, Sonarr, Lidarr
- Unpackerr - extracts files for Radarr, Sonarr, Lidarr
- Caddy - reverse proxy server
- Gluetun - VPN client with Wireguard support. Transmission and Jackett connections are tunneled through this
- Watchtower - check for container updates nightly
- Huginn - allows configuring agents
- PostgreSQL - for any apps that need a database. Huginn only at the moment
all of these services are managed via docker using docker-compose.
Once running, many need to be configured via their UIs. In my case, volume folders are backed up using Synology Hyper Backup to Backblaze B2.