I use my Raspberry Pi 4 4GB as my file server and Emby server. Dietpi does an awesome job of simplifying the installation and configuration of Radarr, Sonarr, Deluge, NZBGet, and Jackett… so there’s no point in me talking about that. It also does a great job of initially installing emby, but after that, its pretty much on you.
Disclaimer: I am by no means an expert, in either linux or Dietpi. With that said, I’ve spent a lot of time and effort on getting Emby set up exactly how I want. I suspect others have duplicated my efforts with mixed results, and my hope is to help in their endeavors. Even if it doesn’t, just putting this on the internet allows me a quick place to reference it if I have to do this again.
Updating Emby:
So a new version of Emby comes out and you want to update to it. There is no easy way to update within Emby like there is for some of the other programs listed above. The only solution is to download the new version and manually install. Dietpi, takes the work out of it for us, however. (thanks to DietPi’s twitter for this solution: https://twitter.com/DietPi_/status/1200842666256326656?s=20)
Step 1: Perform a backup of DietPi. I’ve done this twice now and did not lose my settings either time, but having a backup will allow you to easily restore it in case Step 2 is more eventful for you than it has been for me.
Step 2: Login to your dietpi as root, and run the following:
dietpi-software reinstall 41
This will pull the latest version and install it over the current version. It should retain all your settings, but just in case… you performed step 1, right?
Done.
Configuring Emby with encryption/HTTPS:
Thanks go to aldopi for this method (much easier/more secure and reliable than my own)
A couple pre-requisites:
First, this only works if using lighttpd as your webserver.
Step 1: Get certificates (this is the part I said DietPi makes easy)
on your dietpi, run:
dietpi-letsencrypt
The “domain” should be the DDNS address pointing at your dietpi server, the rest is pretty much up to you.
Step 2: In /etc/lighttpd/conf-available/ edit the file “10-proxy.conf” to add the lines:
$HTTP["url"] =~ "^/emby" {
proxy.server = ( "" => ( ( "host" => "127.0.0.1", "port" => "8096" ) ) )
proxy.header = ( "upgrade" => "enable" )
}
Step 3: Now save that file and run the following command:
sudo ln -s ../conf-available/10-proxy.conf /etc/lighttpd/conf-enabled/
Step 4: Restart lighttpd by rebooting or the following command:
/etc/init.d/lighttpd restart
You’re done. Your emby server should be accessible at https://YOURDOMAIN/emby
Let me know if you run any issues and we can troubleshoot/update this guide.
PROTIP: If you want to enable hardware accelerated h264 encoding (likely for the purpose of transcoding) on the Raspberry Pi, you will need to dedicate at least 128mb to GPU memory. Otherwise it will fail and fall back to software encoding.