Das came up with the solution to get transcoding working for plex with jailmaker. he listed the steps in his github post
opened 08:40AM - 24 Apr 24 UTC
bug
help wanted
Latest version of jailmaker (1.1.5)
As per title; in Dragonfish 24.04.0, Nvidia… passthrough seems to be broken -- ```nvidia-smi``` working fine on host, but inside container it gives:
```
nvidia-container-cli: initialization error: load library failed: /usr/lib/x86_64-linux-gnu/nvidia/current/libnvidia-ml.so.1: file too short
```
Seems the script uses ```nvidia-container-cli list``` to find nvidia files which need mounting, but container expects files outside of this:
```
# On TrueNAS host:
$ nvidia-container-cli list
/dev/nvidiactl
/dev/nvidia-uvm
/dev/nvidia-uvm-tools
/dev/nvidia-modeset
/dev/nvidia0
/usr/lib/nvidia/current/nvidia-smi
/usr/bin/nvidia-persistenced
/usr/lib/x86_64-linux-gnu/nvidia/current/libnvidia-ml.so.545.23.08
/usr/lib/x86_64-linux-gnu/nvidia/current/libnvidia-cfg.so.545.23.08
/usr/lib/x86_64-linux-gnu/nvidia/current/libcuda.so.545.23.08
/usr/lib/x86_64-linux-gnu/nvidia/current/libnvidia-ptxjitcompiler.so.545.23.08
/usr/lib/x86_64-linux-gnu/nvidia/current/libnvidia-nvvm.so.545.23.08
/usr/lib/x86_64-linux-gnu/nvidia/current/libnvidia-encode.so.545.23.08
/usr/lib/x86_64-linux-gnu/nvidia/current/libnvcuvid.so.545.23.08
```
Note that this list doesn't include the file the container is expecting.
Adding a manual mount to my jail's config for ```--bind-ro=/usr/lib/x86_64-linux-gnu/nvidia/current``` resolved it though; not sure if that's a good idea or not, but it works at least :)
Issue resolved. I was missing the NVIDIA* env vars and adding the gpu capabilities to the container. See here for further details.
I may consider to have another try setting up for jellyfin. Not that i really need it, just for experimentation and see if i can provide the steps for others trying to do this.
2 Likes