mediaserver stack for balenaCloud
- Plex organizes video, music and photos from personal media libraries and streams them to smart TVs, streaming boxes and mobile devices.
- NZBGet is a usenet downloader, written in C++ and designed with performance in mind to achieve maximum download speed by using very little system resources.
- Sonarr is a PVR for usenet and bittorrent users. It can monitor multiple RSS feeds for new episodes of your favorite shows and will grab, sort and rename them. It can also be configured to automatically upgrade the quality of files already downloaded when a better quality format becomes available.
- Radarr is a fork of Sonarr to work with movies à la Couchpotato.
- NZBHydra2 is a meta search application for NZB indexers, the "spiritual successor" to NZBmegasearcH, and an evolution of the original application NZBHydra.
- Raspberry Pi 4 or a similar x64 device supported by BalenaCloud
- USB storage drive
To get started you'll first need to sign up for a free balenaCloud account and flash your device.
https://www.balena.io/docs/learn/getting-started
Once your account is set up, deployment is carried out by downloading the project and pushing it to your device either via Git or the balenaCLI.
Application envionment variables apply to all services within the application, and can be applied fleet-wide to apply to multiple devices.
Name | Example | Purpose |
---|---|---|
PLEX_CLAIM |
obtain a claim token from https://plex.tv/claim (expires in 4 minutes) | |
TZ |
America/Toronto |
(optional) inform services of the timezone in your location |
Connect to the Host OS
Terminal and run the following:
# g - create a new empty GPT partition table
# n - add a new partition
# p - primary partition
# 1 - partition number 1
# default - start at beginning of disk
# default - extend partition to end of disk
# w - write the partition table
printf "g\nn\np\n1\n\n\nw\n" | fdisk /dev/sda
mkfs.ext4 /dev/sda1
Restart the services and any supported partitions will be mounted at /media/{UUID}
.
- access the dashboard via
http://{HOST}:5076
- make note of your API key under Config->Main->Security
- add your nzb indexers under Config->Indexers
- optionally enable authentication under Config->Authorization
- access the dashboard via
http://{HOST}:6789
- default credentials are
nzbget:tegbzn6789
- add your usenet servers under Settings->News-Servers
- optionally change or remove authentication under Settings->Security
- change Settings->Paths->MainDir to
/media/{UUID}/downloads
- access the dashboard via
http://{HOST}:8989
- add
http://nzbhydra:5076
under Settings->Indexers->Newznab - add
http://nzbget:6789
under Settings->Download Client - optionally enable authentication under Settings->General->Security
- when adding your first series set the base path to
/media/{UUID}/tv
- access the dashboard via
http://{HOST}:7878
- add
http://nzbhydra:5076
under Settings->Indexers->Newznab - add
http://nzbget:6789
under Settings->Download Client - optionally enable authentication under Settings->General->Security
- when adding your first movie set the base path to
/media/{UUID}/movies
- set the
PLEX_CLAIM
token and restart the service - access the dashboard via
http://{HOST}:32400
- create a new Movies library pointing to
/media/{UUID}/movies
- create a new TV Shows library pointing to
/media/{UUID}/tv
- access the dashboard via
http://{HOST}:8200
- configure a new backup using
/source
for Source Data
Please open an issue or submit a pull request with any features, fixes, or changes.
Kyle Harding https://klutchell.dev