Hello there lemmings! Finally I have taken up the courage to buy a low power mini PC to be my first homeserver (Ryzen 5500U, 16GB RAM, 512 SSD, already have 6TB external HDD tho). I have basically no tangible experience with Debian or Fedora-based system, since my daily drivers are Arch-based (although I’m planning to switch my laptop over to Fedora).
What’s your experiences with Debian and Rocky as a homeserver OS?
Debian stable is a very solid choice for a server OS.
It depends on how you’re going to host your services though. Are you going to use containers (what kind), VMs, a mix of the two, install directly on the host system (and if so where do you plan to source the packages)?
I’ve kept my Debian system very basic, installed latest Docker from the official apt repo, and I’ve installed almost every service in a docker container. Only things installed directly on host are docker, ssh, nfs and avahi.
I’m going full container mode if it’s possible, or just make the docker images myself then.
Make sure you use a docker image that tracks the stable version of Jellyfin. The official image jellyfin/jellyfin tracks unstable. Not all plugins work with unstable and switching to stable later is difficult. This trips lots of people and locks them into unstable because by the time they figure it out they’ve customized their collection a lot.
The linuxserver/jellyfin image carries stable versions but you have to go into the “Tags” tab and filter for
10.
to find them (10.8.13 pushed 16 days ago is the latest right now).To use that version you say “image: linuxserver/jellyfin:10.8.13” in your docker compose instead of “linuxserver/jellyfin:latest”.
This approach has the added benefit of letting you control when you want to update Jellyfin, as opposed to :latest which will get updated whenever the container (re)starts if there’s a newer image available.
While upgrading your images constantly sounds good in theory, eventually you will see that sometimes the new versions will break (especially if they’re tracking unstable versions). When that happens you will want to go back to a known good version.
What I do is go look for tags every once in a while and if there’s a newer version I comment-out the previous “image:” line and add one with the new version, then destroy and recreate the container (the data will survive because you configure it to live on a mounted volume, not inside the container), then recreate with the new version. If there’s any problem I can destroy it, switch back to the old version, and raise it again.
Oh that explains the 2 linuxserver and official jellyfin then. It was always kinda strange to me.
Luckily my uni hosted a docker course and binge watched a beginner Linkedin Learning too about it, but I’m really grateful for your in-depth guide. Guys like you really make Lemmy the old Reddit you used to have and cherish in your hearts. :3
Why did they make that choice? I am on this version right now, didn’t know it was unstable. I found it very difficult to have information regarding the docker images in general, it’s a pity we don’t have a few lines explaining what the content is.
I thought the official jellyfin images on the versioned tags (like “10.8.13”) were stable - are they not?
Oh right, I filtered for “10.” and got an unstable image and thought they don’t have them. Yeah those are stable too.
Huh? That doesn’t appear to be the case.
jellyfin/jellyfin:latest
, which is what they tell you to use in the installation instructions. gives me 10.8.13 which appears to be the latest stable release.There are newer and unstable versions available in dockerhub as well, but
latest
doesn’t give you those. After alllatest
is just a tag with no special meaning of itself, it doesn’t necessarly give you the most recent build.