selkies-project / docker-nvidia-glx-desktop

KDE Plasma Desktop container designed for Kubernetes supporting OpenGL GLX and Vulkan for NVIDIA GPUs with WebRTC and HTML5, providing an open-source remote cloud graphics or game streaming platform. Spawns its own fully isolated X Server instead of using the host X server, not requiring /tmp/.X11-unix host sockets or host configuration.
https://github.com/selkies-project/docker-nvidia-glx-desktop/pkgs/container/nvidia-glx-desktop
Mozilla Public License 2.0
262 stars 58 forks source link

Please Post Minor Feature Requests or Regression Reports Here #23

Closed findmyway closed 1 year ago

findmyway commented 2 years ago

Current cudagl version is hardcoded in the dockerfile. How about turning it into an ARG and enabling it in the GitHub workflow?

ehfd commented 2 years ago

Will consider for the next update, thanks.

ehfd commented 2 years ago

Will make adjustments together when the next version for selkies-gstreamer is out.

Note to self - additional backlogs for next update (MAKE SURE TO COMMIT ON EGL TOO):

ehfd commented 2 years ago

The request has been done in NVIDIA/nvidia-docker#24. However, due to the following issues, the following section in the Dockerfile was required and may present issues the next time the base image is updated. As this is relevant to this issue, I am keeping this issue open. https://github.com/NVIDIA/nvidia-container-toolkit/issues/257 https://gitlab.com/nvidia/container-images/cuda/-/issues/158 https://forums.developer.nvidia.com/t/notice-cuda-linux-repository-key-rotation/212771/12

# Temporary fix for NVIDIA container repository
RUN apt-get clean && \
    apt-key adv --fetch-keys "https://developer.download.nvidia.com/compute/cuda/repos/$(cat /etc/os-release | grep '^ID=' | awk -F'=' '{print $2}')$(cat /etc/os-release | grep '^VERSION_ID=' | awk -F'=' '{print $2}' | sed 's/[^0-9]*//g')/x86_64/3bf863cc.pub" && \
    rm -rf /var/lib/apt/lists/*
ehfd commented 1 year ago

Note that the MATE Desktop is incompatible with Xorg in the default repositories combined with NVIDIA drivers >= 495, therefore the desktop environment was changed to Xfce. Information: https://ubuntu-mate.community/t/can-anyone-here-upgrade-to-nvidia-driver-510-without-login-problems/25147/4 https://forums.developer.nvidia.com/t/cant-boot-after-upgrading-to-510-driver-on-ubuntu-20-04/202625/18 https://bugs.launchpad.net/ubuntu/+source/xorg-server/+bug/1959995

Aerosane commented 1 year ago

Is it possible for having GNOME desktop? As it’s much optimized than xfce and ideal for many Ubuntu operations?

ehfd commented 1 year ago

Is it possible for having GNOME desktop? As it’s much optimized than xfce and ideal for many Ubuntu operations?

  1. Inefficient over remote access protocols.
  2. It has a known issue where there is no EDID, the desktop environment scales to (I think) 1024x768 with many workarounds to make it work with an on-demand resolution.
  3. More issues. https://github.com/TurboVNC/turbovnc/issues?utf8=%E2%9C%93&q=label%3A%22GNOME%203%22 Therefore GNOME is not commonly used in containers. MATE has a separate issue related to Xorg written above. https://github.com/mviereck/x11docker#desktop-environments These are the list of tested DEs in a container, and Xfce has the best graphics and support out of all (anything with --init=systemd, --cap-add=, or is not based on Debian is unpractical to be used in Kubernetes).

Things will improve when we start using Wayland, however.

ehfd commented 1 year ago

A lot of these issues have been addressed in the latest commits. Closing. Ubuntu 22.04 will be supported after nvidia/cudagl image is released.