I’ve bought an i3-13100T for a new home server build.
I was eyeing up ProxMox to run JellyFin in a container, but realised I’m not going to be able to use the GPU for transcoding this way, or is there a method to expose the capabilities of the host GPU to a container, or VM, without adding a 2nd GPU for VFIO?
It should be possible to pass the iGPU through to a VM, but I would not recommend it without having a 2nd GPU in the system or using a motherboard with IPMI. I have a few different Proxmox installations. One has a VM with Plex running on Ubuntu with GPU passthrough for transcoding. The system only has one GPU but the motherboard is a Supermiro board with IPMI so I don’t need a GPU to access the system if the standard Proxmox GUI is inaccessible.
It should be possible to pass a GPU through to a container but I was never able to get it to work so I ended up using a lightweight installation of Ubuntu Server in a VM with Plex installed in it. GPU passthrough to a standard VM worked the first time I tried it and there are a lot of tutorials out there that cover it so that’s what I’ve stuck with and haven’t had any issues with it so far.
I thought as much, but I thought i’d ask, as a lot has changed over the years, so I hoped there might be a way to do what I wanted. Adding a 2nd GPU would just defeat the purpose of buying a modern iGPU for a low power system though. I use VFIO on the desktop.
Plan B is installing OpenMediaVault and JellyFin instead of ProxMox, and getting VM’s and Containers to run on OMV, if that’s possible. Otherwise, OpenSuSe or Debian server.
Intel iGPU supports SRIOV. You should be able to use something like i915-sriov-dkms to enable SRIOV support on the host and pass the virtual GPU to the guest. From a quick search, looks like someone has done this with i3-12100 (non-K/non-F) + Proxmox + Jellyfin:
Unless you have a specific need for a VM I have found that there are way less problems just using Debian + Docker rather than having to deal with issues related to passthrough and sr-iov.
If Asterisk is available as a container, then I doubt I will need a VM, at least at the moment. But I don’t want to cut that option out of anything I might need/want to do in the future, so i want to set it up to work for if/when i do.
I’d rather use ProxMox or OMV to take a lot of the initial config issues away, and give me a management GUI I can use from anywhere too. I’ve only used Debian a couple of times, so it’s another layer to learn if I go that route.
It’s relatively straightforward to pass an Intel iGPU through to a LXC container in Proxmox. I have one running Plex that handles hardware transcoding via Quicksync no problem. You may have to run the container as privileged–I’ve never tried an unprivileged one.
Just one more note, if you follow a guide for proxmox 6 you may have some wrong lines in the lxc pass thru, people had a lot of trouble with the transition. I forget what the format was id have to look.
Is it easier to pass intel igpu to lxc as opposed to docker or even full VM on Proxmox?
I am currently building a server and don’t have any experience with any of that, would appreciate your input. Thanks.
My daily gaming distro is a VM with VFIO, so it’s not such a big deal. I have a spare GTX1080 that might still work, so i’m toying with the idea of using it to stream games @1080p to the Steam Links and media player.