Launching the latest mrview/shview on Docker

Dear MRtrix(3) specialists,

For development purposes, I’ve been using the latest version of MRtrix3 in a container on Docker Desktop and I find no reference on how to set up remote rendering to be capable of launching mrview/shview GUI components in Docker. The truth is that my understanding of this setup is rather poor. I’m nevertheless able to run older versions of mrview via X-server forwarding, i.e. connecting to the X-server by exporting its IP address within a Docker container. My graphics card complies with the OpenGL 3.3 requirements.

Can you provide any step-by-step manual for that?


This is essentially the same problem as with remote rendering over X11, or running on the Windows Subsystem for Linux: there is no direct rendering interface, so the software needs to fall back to the traditional X11 OpenGL extension (GLX), which currently only provides support for OpenGL up to version 2. However, it does somehow mysteriously work when the stars are in alignment (or more likely, when the exact right versions of the mesa drivers are installed and talking to each other).

Other relevant sources:

Ultimately, I don’t think this is something that we intend to fix any time soon – the chances are, this issue will go away all by itself once support for remote rendering is properly added to Wayland.

Thank you for your tips @jdtournier . For now, I’ve installed the same MRtrix3 version on Windows, as instructed in your main docs. Using this seemingly easiest workaround, I’m now running the latest mrview version without any issues.