[SOLVED] GUI Qt Application in a docker container

Issue

I try to run some Qt application in a docker container by mounting /tmp/.X11-unix. I saw here that can be difficult.

So when I run kdevelop in a docker container, it does not work (I get an empty window). But if I run qtcreator it’s fine.

I think the difference is because of the Qt version used (kdevelop is developed with Qt4 and qtcreator with Qt5). All my other Qt5 applications work fine, but not a single Qt4 application.

Question:

Does anyone know what to do to launch a Qt4 application, without going a long way round like with vnc or ssh, just like this:

docker run -it -e DISPLAY -v /tmp/.X11-unix:/tmp/.X11-unix someQt4AppContainer

?

Solution

Qt5 and Qt4 has a different rendering subsystems

Qt4 renderer just needs a hint:

export QT_GRAPHICSSYSTEM="native"

This must be work

QT_GRAPHICSSYSTEM="native" docker run -it -e DISPLAY=$DISPLAY -v /tmp/.X11-unix:/tmp/.X11-unix someQt4AppContainer

Answered By – Vladislav Mikitich

Answer Checked By – Marie Seifert (BugsFixing Admin)

Leave a Reply

Your email address will not be published. Required fields are marked *