selkies-project / docker-nvidia-egl-desktop

KDE Plasma Desktop container designed for Kubernetes, supporting OpenGL EGL and GLX, Vulkan, and Wine/Proton for NVIDIA GPUs through WebRTC and HTML5, providing an open-source remote cloud/HPC graphics or game streaming platform.
https://github.com/selkies-project/docker-nvidia-egl-desktop/pkgs/container/nvidia-egl-desktop
Mozilla Public License 2.0
227 stars 48 forks source link

selkies-gstreamer not starting after upgrading to ubuntu 24.04 and latest docker image #38

Closed DAB0mB closed 3 months ago

DAB0mB commented 3 months ago

Hello,

recently I have upgraded my local machine from ubuntu v22 to v24, and I updated the docker image to latest, and I started to experience some issues.

The container would seemingly start with no issues, but when I would try to connect via the web interface, selkies-gstreamer would exit with stastus code 0 and restart itself perpetually:

2024-06-30 17:43:23,420 INFO exited: selkies-gstreamer (exit status 0; expected)
2024-06-30 17:43:23,424 INFO spawned: 'selkies-gstreamer' with pid 1047
2024-06-30 17:43:24,462 INFO success: selkies-gstreamer entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
2024-06-30 17:43:28,201 INFO exited: selkies-gstreamer (exit status 0; expected)
2024-06-30 17:43:28,205 INFO spawned: 'selkies-gstreamer' with pid 1161
2024-06-30 17:43:29,239 INFO success: selkies-gstreamer entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
2024-06-30 17:43:32,991 INFO exited: selkies-gstreamer (exit status 0; expected)
2024-06-30 17:43:32,994 INFO spawned: 'selkies-gstreamer' with pid 1276

I tried to look in the logs in /tmp//tmp/selkies-gstreamer-entrypoint.log and saw the following error message repeating itself, I assume in correspondence to the restarts:

ValueError: invalid literal for int() with base 10: 'Failed to initialize NVML: Unknown Error'

Here's the commandthat I used:

docker run --runtime=nvidia --rm --name selkies-egl -it --gpus 1 --tmpfs /dev/shm:rw -e TZ=UTC -e DISPLAY_SIZEW=1920 -e DISPLAY_SIZEH=1080 -e DISPLAY_REFRESH=60 -e DISPLAY_DPI=96 -e DISPLAY_CDEPTH=24 -e PASSWD=mypasswd -e SELKIES_BASIC_AUTH_PASSWORD=mypasswd -p 8080:8080 ghcr.io/selkies-project/nvidia-egl-desktop:latest

I tried to set SELKIES_ENCODER to x264enc (software rendering), and I'm able to see the desktop, however, when I try to launch Unreal Editor (requires Vulkan), I get the following error message:

Vulkan failed to selected physical device after passing profile checks

Screenshot from 2024-06-30 13-38-07

This makes sense to me, because I used software rendering. However, it did work before, and I didn't have to specify an encoder. I have installed nvidia driver 535.171.04 and nvidia container toolkit.

Any help would be greatly appreciated.

DAB0mB commented 3 months ago

I had to enable cgroups in nvidia runtime config: https://stackoverflow.com/a/78137688

ehfd commented 3 months ago

Feel free to reach out with other inquiries.