A completely self-contained media server running on Docker
- Configure environment variables
docker compose up -d
- Configure individual services (first time only)
Example .env
file
# general config
PUID=1000
PGID=1000
STORAGE_PATH=/path/to/media/server/storage
# see here https://en.wikipedia.org/wiki/List_of_tz_database_time_zones
TZ=Australia/Perth
# gluetun config
VPN_SERVICE_PROVIDER=mullvad
OPENVPN_USER=mullvad_account_number
SERVER_COUNTRIES=australia
# ports
JELLYFIN_PORT=8096
JACKETT_PORT=9117
SONARR_PORT=8989
RADARR_PORT=7878
QBITTORRENT_PORT=6881
REQUESTRR_PORT=4545
If you don't intend to store data on your system's main storage device (ie. your WSL drive), symlinks from Qbittorrent's downloads folder to Jellyfin's media directories will not work, and instead copies will be made of all media, doubling used storage capacity. If you don't want to store all your media-server data on your WSL drive then a Linux virtual machine running Docker may be good alternative.
- Qbittorrent credentials are currently admin/adminadmin
- have to manually add /downloads folder to sonarr/radarr media management screens
- have to manually disable anonymous usage statistic logging in sonarr/radarr
- have to set preferred protocol in sonarr/radarr to torrent only
- Have to manually configure Qbittorrent to seed
- Kubernetes networking: https://cloud.redhat.com/blog/guide-to-kubernetes-egress-network-policies
This project is only intended for the download and management of;
- Shows with open licenses or expired copyrights (eg. Big Buck Bunny)
- Content you already own on physical media
- Maybe you don't have a Blu-Ray player?
I do not recommend or endorse illegitimate usage of any of the services arranged with this docker configuration. Don't use this configuration for anything that may be considered illegal in your place of residence. Observe that all liability and warrenty is waived via the GNU General Public License v3.0.