OpenGL on K8s JupyterHub

I’m looking to get some guidance on running OpenGL applications on a Jupyter container image spun up by a K8s based JupyterHub. We have 2 custom images, one for PyTorch, and one for Tensorflow, that work for those specific applications. CUDA is working and I am able to run through examples and see the GPU get utilized. We have an internal tool that utilizes OpenGL that I can not get working.

I have come across the following post that seems very relevant to our issue : Unable to Initialize EGL
The GL image is not maintained and out of date and I’d like to understand what can be done on our container image to configure this appropriately.

Our hardware is running Nvidia A2 GPUs.
$nvidia-smi
±--------------------------------------------------------------------------------------+
| NVIDIA-SMI 545.23.08 Driver Version: 545.23.08 CUDA Version: 12.3 |
|-----------------------------------------±---------------------±---------------------+

$nvcc -V
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2021 NVIDIA Corporation
Built on Sun_Mar_21_19:15:46_PDT_2021
Cuda compilation tools, release 11.3, V11.3.58
Build cuda_11.3.r11.3/compiler.29745058_0

The following ENV vars are set
NVIDIA_VISIBLE_DEVICES=GPU-b4516d37-034f-c1f0-af2b-540d99586c2c
NVIDIA_DRIVER_CAPABILITIES=all

The driver is setup correctly on our linux hosts. The nvidia container toolkit is installed. We can launch the container image with the nvidia runtime without issue and again see and utilize the GPUs with applications outside of OpenGL.

The error that is thrown by the OpenGL application is:
[GLContextProviderEGL.cpp:66] Failed to initialize EGL
[GLContextProviderEGL.cpp:67] EGL Error: EGL_NOT_INITIALIZED
[GLContextProvider.cpp:28] Could not get an OpenGL context from the display manager. Is one running?
[GLContextProvider.cpp:29] Falling back to software rendering
OpenGL 3.3 (Core Profile) Mesa 21.2.5

I can provide more information about the container build or the kubernetes environment as needed to help fill in gaps with the introductory information I provided.

What else can I look at or include in order to get this working?