I'd like to enable hardware-accelerated video transcoding via an Nvidia GPU card for an instance of Plex Media Server running inside PVE's flavor of LXC container.
Has anyone been successful in enabling Nvidia GPU pass-through on Proxmox using nvidia-container-runtime? (LXC or KVM, doesn't matter to me).
I'm not that familiar with LXC, even less so with the layers above that Proxmox VE adds. Nvidia has had Docker support for a while, and more recently restructured nvidia-container-runtime so it can be used with LXC, too.
The LXC support isn't as well documented as the Docker side, and with the extra Proxmox VE extensions, creating a 'naked' LXC container by following their recipe means Proxmox seems to be blissfully unaware of its existence. So no better than just installing Docker and using the pre-baked Docker images that Nivida has on Docker Hub. I'm reluctant to add another container type not managed by PVE if I can avoid it.
In fact, Nvidia's LXC instructions convert their docker image to a 'native' LXC container via the LXC OCI template.
I'm sure I'll eventually figure out how to align the moving parts to get it working, but it's proving a bit frustrating at the moment. Just wondering if someone has cracked this nut already.
Pointers very much appreciated. In a perfect world, there would be a template I could just use to create an Nvidia-enabled LXC container through the PVE web UI
- Paul
https://devblogs.nvidia.com/gpu-containers-runtime/
https://github.com/NVIDIA/nvidia-container-runtime
https://bradford.la/2016/GPU-FFMPEG-in-LXC
https://pve.proxmox.com/wiki/Linux_Container
Has anyone been successful in enabling Nvidia GPU pass-through on Proxmox using nvidia-container-runtime? (LXC or KVM, doesn't matter to me).
I'm not that familiar with LXC, even less so with the layers above that Proxmox VE adds. Nvidia has had Docker support for a while, and more recently restructured nvidia-container-runtime so it can be used with LXC, too.
The LXC support isn't as well documented as the Docker side, and with the extra Proxmox VE extensions, creating a 'naked' LXC container by following their recipe means Proxmox seems to be blissfully unaware of its existence. So no better than just installing Docker and using the pre-baked Docker images that Nivida has on Docker Hub. I'm reluctant to add another container type not managed by PVE if I can avoid it.
In fact, Nvidia's LXC instructions convert their docker image to a 'native' LXC container via the LXC OCI template.
I'm sure I'll eventually figure out how to align the moving parts to get it working, but it's proving a bit frustrating at the moment. Just wondering if someone has cracked this nut already.
Pointers very much appreciated. In a perfect world, there would be a template I could just use to create an Nvidia-enabled LXC container through the PVE web UI
- Paul
https://devblogs.nvidia.com/gpu-containers-runtime/
https://github.com/NVIDIA/nvidia-container-runtime
https://bradford.la/2016/GPU-FFMPEG-in-LXC
https://pve.proxmox.com/wiki/Linux_Container