Fork of https://github.com/AdrienPoupa/docker-compose-nas. A Docker stack for a home media setup.
Go to file
2023-02-15 23:07:38 -05:00
adguardhome feat: add Adguard Home 2023-02-15 23:07:38 -05:00
flaresolverr feat: add Adguard Home 2023-02-15 23:07:38 -05:00
heimdall feat: Initial commit 2022-03-26 19:33:08 -04:00
jellyfin feat: add Jellyfin 2023-02-13 00:56:21 -05:00
letsencrypt feat: add Let's Encrypt SSL certificates and Tailscale instructions 2022-12-30 19:05:22 -05:00
pia feat: Initial commit 2022-03-26 19:33:08 -04:00
pia-shared feat: Initial commit 2022-03-26 19:33:08 -04:00
prowlarr feat: Initial commit 2022-03-26 19:33:08 -04:00
qbittorrent feat: Initial commit 2022-03-26 19:33:08 -04:00
radarr feat: Initial commit 2022-03-26 19:33:08 -04:00
sonarr feat: Initial commit 2022-03-26 19:33:08 -04:00
.env.example feat: add Adguard Home 2023-02-15 23:07:38 -05:00
.gitignore feat: add Adguard Home 2023-02-15 23:07:38 -05:00
CONFIGURATION.md feat: add Jellyfin 2023-02-13 00:56:21 -05:00
docker-compose.yml feat: add Adguard Home 2023-02-15 23:07:38 -05:00
INSTALL.md feat: add Jellyfin 2023-02-13 00:56:21 -05:00
README.md feat: add Jellyfin 2023-02-13 00:56:21 -05:00
update-config.sh feat: add Jellyfin 2023-02-13 00:56:21 -05:00

Docker Compose NAS

After searching for the perfect NAS solution, I realized what I wanted could be achieved with some Docker containers on a vanilla Linux box. The result is an opinionated Docker Compose configuration capable of browsing indexers to retrieve media resources and downloading them through a Wireguard VPN with port forwarding. SSL certificates and remote access through Tailscale are supported.

Applications

The following applications are available:

  • Sonarr: PVR for newsgroup and bittorrent users
  • Radarr: Movie collection manager for Usenet and BitTorrent users
  • Prowlarr: Indexer aggregator for Sonarr and Radarr
  • qBittorrent: Bittorrent client with a complete web UI
  • PIA Wireguard VPN: Encapsulate qBittorrent traffic in PIA using Wireguard with port forwarding.
  • Jellyfin: Media server designed to organize, manage, and share digital media files to networked devices
  • Heimdall: Application dashboard
  • Traefik: Reverse proxy
  • Watchtower: Automated Docker images update

Installation

See installation instructions.

TLDR: cp .env.example .env, edit to your needs then sudo docker compose up -d, then for the first time ./update-config.sh.

Configuration

See configuration.

Containers

Application Image URL Notes
Sonarr linuxserver/sonarr /sonarr
Radarr linuxserver/radarr /radarr
Prowlarr linuxserver/prowlarr:develop /prowlarr develop tag as it is not stable yet
PIA Wireguard VPN thrnz/docker-wireguard-pia
qBittorrent linuxserver/qbittorrent:4.5.0-libtorrentv1 /qbittorrent Uses VPN network
Using Libtorrent 1.x
Jellyfin linuxserver/jellyfin /jellyfin
Heimdall linuxserver/heimdall /
Traefik traefik
Watchtower watchtower

Improvement

There is always room for improvement. I did not need those containers, so I did not include them, but maybe you could benefit from:

  • Bazarr: companion application to Sonarr and Radarr that manages and downloads subtitles
  • Lidarr: music collection manager for Usenet and BitTorrent users
  • FlareSolverr: Proxy server to bypass Cloudflare protection, useful for some indexers in Prowlarr
  • Jackett: API Support for your favorite torrent trackers, as a Prowlarr replacement
  • Pi-hole: DNS that blocks ads
  • Expose services with CloudFlare Tunnel if Tailscale is not enough
  • you tell me!