Jellyfin isn’t the most secure piece of software out there, I would avoid giving it permissions it doesn’t need.
Step 1) Check /dev/dri for the GPU
user@debian:~/compose$ ls /dev/dri
total 0
drwxr-xr-x 3 root root 120 Jan 25 11:50 .
drwxr-xr-x 18 root root 3360 Feb 11 03:03 ..
drwxr-xr-x 2 root root 100 Jan 25 11:50 by-path
crw-rw---- 1 root video 226, 0 Jan 25 11:50 card0
crw-rw---- 1 root video 226, 1 Jan 25 16:39 card1
crw-rw---- 1 root render 226, 128 Jan 25 11:50 renderD128
Documentation indicates renderDXXX typically refers to Intel GPU’s
Make sure at least one renderD* device exists in /dev/dri. Otherwise upgrade your kernel or enable the iGPU in the BIOS.
- Edit your docker-compose.yaml and add this In your Jellyfin block
devices:
- /dev/dri/renderD128:/dev/dri/renderD128
- Start your container and enter it to verify the device is recognized.
sudo docker compose up -d; sudo docker exec -it jellyfin bash
Once inside ls /dev/dri to confirm the GPU is recognized inside the container, once you confirm it then you can exit the container.
user@debian:~/compose$ sudo docker exec -it jellyfin bash
I have no name!@jellyfin:/$ ls /dev/dri
renderD128
I have no name!@jellyfin:/$ exit
exit
user@debian:~/compose$
- On the Jellyfin dashboard go to the hardware acceleration page and follow the notes left by Jellyfin devs.
