I want to use Jellyfin on Proxmox, if that is a thing. After reading a post here where most people recommended Debian as host OS I want to make a VM running Debian and install Jellyfin Server there.
Now I have a few questions:
-
I see many people install Jellyfin via docker. Does that have any advantages? I would prefer to avoid docker as it adds a level of complexity for me.
-
where do I save my media? I have a loose plan to run a second VM running openMediaVault where all my HDDs are passed through and then use NFS to mount a folder on the Jellyfin VM. Is that a sane path?
-
what do I have to consider on Proxmox, to get the best hardware results on Jellyfin? Do I need some special passthrough magic to get it running smoothly? I don't have a dedicated GPU, does that make the configuration easier?
Thank you for your answer. I maybe want to add some features in the future, like all those *arr- programs. Wouldn't it be easier to have everything in one VM instead of many LXC?
Use LXC unless that's for some reason not possible. It has less overhead than VMs. How many services you put into one container is for you to decide. I have one for jellyfin and one for the arrs and download client. Splitting everything into more containers might be beneficial, if something stops working. You can then fix or use a backup for the one thing without inhibiting the other services.
Unless you want to use docker. Then, as others have mentioned, make one VM and put all your dockers there.
I have arr in lxc also, I just map a folder from the host into the lxc containers. It's working flawless, plus it's quite flexible.
I also have a few things running in docker, but if I can get it in lxc I do that.
And it's so easy doing with the scripts from the page I linked to you:)
Thank you, that sounds like my favorite option so far!
Another benefit to LXC is you can map devices, including GPU, to multiple LXC while keeping them accessible to the host. For my home setup I currently have 3 LXC with access to the iGPU, 1 for jellyfin+caddy via podman nested, 1 for moonfire-nvr via podman nested, and been trying to use 1 to figure out hardware transcoding with owncast through multiple install methods but no luck so far. I've also been playing with mapping rtl-sdr v3 devices, zigbee stick, zwave stick, and coral usb for a variety of projects lately.
edit: I forgot to answer the question and went straight to ranting, lol. LXC is like a bare-metal VM. You can install & run multiple things on them like a normal VM including podman or docker.
You can do this with the iGPU for VMs too, using either GVT-g for older Intel iGPUs or SR-IOV for newer ones. I'm using my iGPU in a Windows VM as well as in Docker containers on the host.