title: "home theater services"
date: 2024-02-10 00:00:00
category: diy
tags: plex sonarr radarr prowlarr
description: "the Arr apps are amazing"
last black friday, I splurged and got a new 65" tv, record player, AV receiver and surround sound speakers for the living room. it's been a monumental upgrade to our home theater experience. the living room was already wired for a 5.1 setup by a previous owner, so it wasn't too much of a stretch to adapt it to 7.1. cannot recommend it enough. but the digital side of my home theater needed some love to match. it was using the same janky setup i initially hacked together when i first got my NAS. (which I bought using the 2020 covid trumpbux. pretty sweet.) so this weekend i re-did my NAS setup to make use of the *arr family of apps and help manage everything with a little less friction.
obligatory note that i don't condone or endorse downloading content illegally. use torrents responsibly as dictated by the laws of your country of residence. thanks! ✌️
before i was only running qbittorrent in docker, not really using jackett, etc. after a couple of hours this weekend, and several more hours moving files around to match my new folder structure, i now have a bunch of additional services running in docker and they all communicate with each other. it's great. content in my media library is monitored via radarr/sonarr/prowlarr and when higher quality versions of files are available, it updates them. it also lets me know when i'm missing episodes of series, etc. has made the whole process a lot more seamless.
basically, it works with one large shared folder so things are treated as a single filesystem. all the services are exposed on different ports available only to my home network.
data
├── torrents
│ ├── books
│ ├── movies
│ ├── music
│ └── tv
└── media
├── books
├── movies
├── music
└── tv
there is a separate shared folder for all of the docker services and their config. this separation allows things to be easily mounted in as volumes and shared across the services that need them, without exposing everything to a service that doesn't need it. nifty.
you'll need an accompanying .env file for any of the ${ } values, and a little bit of extra work if you do want to use a VPN for your torrent client (recommended). the TRaSH guide and hotio.dev docs for the qbittorent container linked below were very helpful in sorting all of that out. The TRaSH guide has good base versions for both files.
i also created some scheduled tasks. one runs docker-compose up -d on boot, so whenever my NAS restarts, these services will too. the other scheduled task runs pullio every weekend to keep these containers updated.
in the future, i think i'm going to play around with self-hosting a discord server where i can send container updates / notifications to. potentially integrate with slash commands to add content to my library from anywhere, not necessarily just through the webui when connected to my home network. knowing me, i probably won't get to that for many months... but someday i will 😁
resources
huge shoutout to these links which really helped me sort it out along the way:
title: "home theater services" date: 2024-02-10 00:00:00 category: diy tags: plex sonarr radarr prowlarr description: "the Arr apps are amazing"
last black friday, I splurged and got a new 65" tv, record player, AV receiver and surround sound speakers for the living room. it's been a monumental upgrade to our home theater experience. the living room was already wired for a 5.1 setup by a previous owner, so it wasn't too much of a stretch to adapt it to 7.1. cannot recommend it enough. but the digital side of my home theater needed some love to match. it was using the same janky setup i initially hacked together when i first got my NAS. (which I bought using the 2020 covid trumpbux. pretty sweet.) so this weekend i re-did my NAS setup to make use of the *arr family of apps and help manage everything with a little less friction.
obligatory note that i don't condone or endorse downloading content illegally. use torrents responsibly as dictated by the laws of your country of residence. thanks! ✌️
before i was only running qbittorrent in docker, not really using jackett, etc. after a couple of hours this weekend, and several more hours moving files around to match my new folder structure, i now have a bunch of additional services running in docker and they all communicate with each other. it's great. content in my media library is monitored via radarr/sonarr/prowlarr and when higher quality versions of files are available, it updates them. it also lets me know when i'm missing episodes of series, etc. has made the whole process a lot more seamless.
basically, it works with one large shared folder so things are treated as a single filesystem. all the services are exposed on different ports available only to my home network.
there is a separate shared folder for all of the docker services and their config. this separation allows things to be easily mounted in as volumes and shared across the services that need them, without exposing everything to a service that doesn't need it. nifty.
at least on synology you have to make these folders manually, but that's not a big deal if you can ssh into your box instead of using the web ui.
in the
docker/appdata
folder, i have adocker-compose.yml
and a.env
file to centralize management of all these services.here's what the docker-compose looks like for all of the services:
you'll need an accompanying
.env
file for any of the${ }
values, and a little bit of extra work if you do want to use a VPN for your torrent client (recommended). the TRaSH guide and hotio.dev docs for the qbittorent container linked below were very helpful in sorting all of that out. The TRaSH guide has good base versions for both files.i also created some scheduled tasks. one runs
docker-compose up -d
on boot, so whenever my NAS restarts, these services will too. the other scheduled task runs pullio every weekend to keep these containers updated.in the future, i think i'm going to play around with self-hosting a discord server where i can send container updates / notifications to. potentially integrate with slash commands to add content to my library from anywhere, not necessarily just through the webui when connected to my home network. knowing me, i probably won't get to that for many months... but someday i will 😁
resources
huge shoutout to these links which really helped me sort it out along the way: