-
-
Notifications
You must be signed in to change notification settings - Fork 224
Description
Is there an existing issue for this?
- I have searched the existing issues
Current Behavior
I'm having issues with HW transcoding after updating all the packages on my Arch Linux host. This included the nvidia container runtime and updating the nvidia driver to version 580.xx.xx. Originally the Plex container failed to even start with the following error
docker: Error response from daemon: failed to create task for container: failed to create shim task: OCI runtime create failed: runc create failed: unable to start container process: error during container init: error running prestart hook #0: exit status 1, stdout: , stderr: Auto-detected mode as 'legacy'
I found this post on the Arch Linux forum about this exact issue which led me to switch to using CDI instead of legacy by running the following commands.
sudo nvidia-ctk runtime configure --runtime=docker
sudo nvidia-ctk cdi generate --output=/etc/cdi/nvidia.yaml
sudo nvidia-ctk config --in-place --set nvidia-container-runtime.mode=cdi && sudo systemctl restart docker
This fixed the issue for my frigate, jellyfin, and faster-whisper containers but for some reason the Plex container exhibits the same behavior as #403 where the, failed to load libcuda.so
errors come up when Plex attempts to transcode. I am able to run nvidia-smi
in the plex container and I receive the proper output.
I was finally able to get Plex to use HW transcoding by using the solution in #403 (comment) which was to run for i in /usr/lib/lib*.so.1; do ln -s $i /usr/lib/plexmediaserver/lib/; done
in the container.
That obviously isn't a super ideal solution so I wanted to bring the issue to your attention to see if there is something else that could be done to mitigate this issue. I'm really not sure where this is falling down whether it be the nvidia 580.xx driver, the nvidia container runtime, a docker update, upstream of this container in plex itself, or the linux server container itself.
Expected Behavior
The Plex container starts and hardware transcoding remains functional as it did before.
Steps To Reproduce
- Update Arch Linux with
sudo pacman -Syyu
- Try to run the Plex container
Environment
- OS: Arch Linux
- How docker service was installed: sudo pacman -S docker
CPU architecture
x86-64
Docker creation
I used the following compose file:
services:
plex:
image: lscr.io/linuxserver/plex:latest
container_name: plex
runtime: nvidia
network_mode: host
environment:
- PUID=1001
- PGID=985
- VERSION=docker
- NVIDIA_VISIBLE_DEVICES=all
- NVIDIA_DRIVER_CAPABILITIES=all
volumes:
- /tank/appdata/plex:/config
- /tank/media:/media
restart: unless-stopped
deploy:
resources:
reservations:
devices:
- driver: nvidia
count: all
capabilities: [gpu]
Container logs
[migrations] started
[migrations] no migrations found
───────────────────────────────────────
██╗ ███████╗██╗ ██████╗
██║ ██╔════╝██║██╔═══██╗
██║ ███████╗██║██║ ██║
██║ ╚════██║██║██║ ██║
███████╗███████║██║╚██████╔╝
╚══════╝╚══════╝╚═╝ ╚═════╝
Brought to you by linuxserver.io
───────────────────────────────────────
To support LSIO projects visit:
https://www.linuxserver.io/donate/
───────────────────────────────────────
GID/UID
───────────────────────────────────────
User UID: 1001
User GID: 985
───────────────────────────────────────
Linuxserver.io version: 1.42.1.10060-4e8b05daf-ls278
Build-date: 2025-08-11T17:39:21+00:00
───────────────────────────────────────
**** Server already claimed ****
**** adding /dev/dri/renderD128 to video group root with id 0 ****
**** permissions for /dev/dri/card1 are good ****
Docker is used for versioning skip update check
[custom-init] No custom files found, skipping...
Starting Plex Media Server. . . (you can ignore the libusb_init error)
Connection to localhost (::1) 32400 port [tcp/*] succeeded!
[ls.io-init] done.
Critical: libusb_init failed
Dolby, Dolby Digital, Dolby Digital Plus, Dolby TrueHD and the double D symbol are trademarks of Dolby Laboratories.
Connection to 45.56.108.77 closed by remote host.
Metadata
Metadata
Assignees
Labels
Type
Projects
Status