Hardware transcoding inside an unprivileged LXC container on Proxmox
·1 min
I usually run unprivileged LXC containers on Proxmox (as opposed to privileged ones). I did the following to make Jellyfin hardware transcoding work inside the container:
cat > /etc/udev/rules.d/99-intel-chmod666.rules << 'EOF'
KERNEL=="renderD128", MODE="0666"
KERNEL=="card0", MODE="0666"
EOF
# Reboot Proxmox host once.
Add the following to the /etc/pve/lxc/xyz.conf file:
lxc.cgroup2.devices.allow: c 226:128 rwm
lxc.cgroup2.devices.allow: c 29:0 rwm
lxc.mount.entry: /dev/dri dev/dri none bind,optional,create=dir
lxc.mount.entry: /dev/dri/renderD128 dev/renderD128 none bind,optional,create=file
(Another resource that looked promising was this, which talks about some kind of user mapping from inside the container to Proxmox, but I found the above easier.)