Docker Apps and UUID issue with NVIDIA GPU after upgrade to 24.10 or 25.04

Just had this issue on 25.04-RC.1 with plex

I recently installed steam-headless which uses the same GPU that plex uses and since I installed steam-headless I had a reboot everything was still working. Then all apps had updates. When I went to update all the apps plex had this issue. If I remember correctly this was the first update plex had since I installed steam-headless.

This worked for me - Thank You.

Just wanted to chime in that as of 2025-05-28 running 25.04.0, I had to do this to FINALLY fix this issue. Also worth noting I had to run with -j instead of -job.
All my stream sessions seem to be working fine now.

For me I had to replace -job with --job.

TrueNAS 25.04

midclt call --job app.update APP_NAME '{"values": {"resources": {"gpus": {"use_all_gpus": false, "nvidia_gpu_selection": {"PCI_SLOT": {"use_gpu": true, "uuid": "GPU_UUID"}}}}}}'

Replace:

  • APP_NAME: is the name you entered in the application, for example “plex”.
  • PCI_SLOT: is the pci slot identified in the error, for example "0000:2d:00.0”. (search the error for 000 and this will likely show you your unique value. However, it’s likely 0000:01:00.01
  • GPU_UUID is the UUID matching the pci slot that you retrieved with the above command. To get this run midclt call app.gpu_choices | jq from shell and scroll until you see the uuid to your GPU.

Refresh the page and write out your command line.

Here is my example:

midclt call --job app.update plex '{"values": {"resources": {"gpus": {"use_all_gpus": false, "nvidia_gpu_selection": {"0000:01:00.0": {"use_gpu": true, "uuid": "GPU-29ceb82c-547a-4641-d76c-42bac66b20ef"}}}}}}'

I was then able to replace the app name with each App I wanted to assign the GPU to.

Hello, New user trying truenas from zima os and @DjP-iX solved my issues with the correct command: ```
midclt call -j app.update jellyfin ‘{“values”: {“resources”: {“gpus”: {“use_all_gpus”: false, “nvidia_gpu_selection”: {“0000:01:00.0”: {“use_gpu”: true, “uuid”: “GPU-xxxxxxxxxxxxxxx”}}}}}}’


Thanks I love you

This worked for me, thank you!

Confirmed still working - on 25.04.1. thanks again OP!!

Thanks for the help. This fixed my issue updating the plex app. I’m not sure how this issue came about for me because I installed 24.10 new when I installed hexos for the first time. This error popped up after updating plex multiple times. I’ve never messed with the default config of plex so i find it odd the gpu became unrecognized. Ive also had issues with video codecs in plex that turned out to be permission issues so i wonder if the app didn’t have permission to change the gpu_uuid.

TrueNAS 25.04.1

howdy, I tried this command and keep getting:

truenas_admin@truenas[~]$ midclt call -j app.update jellyfin '{"values": {"resources": {"gpus": {"use_all_gpus": false, "nvidia_gpu_selection": {"0000:65:00.0": {"use_gpu": tru
e, "uuid": "GPU-294a3e3d-3154-2190-aae0-b13e22eaa5f8"}}}}}}'
Status: (none)
Status: (none)
Total Progress: [________________________________________] 0.00%Total Progress: [________________________________________] 0.00%
[EINVAL] update: Input should be a valid dictionary or instance of AppUpdate
truenas_admin@truenas[~]$ 

What am I missing here?

I still have issues with this topic and I try to dokument this as good as possible:

Background:
After upgrading to TrueNAS-SCALE-25.04.1, I encountered the known RenderError: Expected [uuid] to be set for GPU when assigning my NVIDIA T400 to Jellyfin. Following the solutoun in this thread, I successfully mapped the GPU using:

midclt call -j app.update jellyfin '{"values": {"resources": {"gpus": {"nvidia_gpu_selection": {"0000:01:00.0": {"uuid": "GPU-XXXX"}}}}}}'

The GPU is now detected in the container (nvidia-smi works), but Jellyfin refuses to use it for transcoding.

Current Issue:

  1. Symptoms
  • Playback Info shows no GPU decoder (only software fallback).
  • nvidia-smi shows no jellyfin-ffmpeg processes during streams.
  • Forced transcoding (720kbps test) fails with “Bitrate exceeds limit” but no GPU utilization.
  1. Validated Configurations
  • encoding.xml confirms NVENC is enabled.
  • GPU is visible in the container (docker exec nvidia-smi succeeds).
  • All 10-bit codecs are disabled; only H.264/HEVC 8-bit are allowed.

Request:

  1. Is this a known limitation of TrueNAS’s app template system?
  2. Are there hidden permissions or mount points needed for NVENC?
  3. Should we consider this a bug, or is there a workaround I’ve missed?

System:

  • TrueNAS-SCALE 25.04.1
  • NVIDIA T400 (Driver 550.142)
  • Jellyfin 10.10.7 (Official Chart)