Display connection problems with bionic onwards
No GUI appears on images ubuntu bionic or higher such as Debian buster/experimental. The reason is still unclear. This is probably related to the now Wayland server. Tips appreciated.
running the command in ubuntu bionic or higher such as Debian buster/experimental:
$docker run --rm --cap-drop=all --net=host --volume=/tmp/.X11-unix:/tmp/.X11-unix --user=1000:1000 -e DISPLAY=unix:0 --volume=/home/raabf/.config/dockertexstudio:/home/.config/texstudio --volume=/home/raabf/:/home/raabf/ -e HOME=/home/ --name=texstudio_bionic --workdir=/home/ mytexstudio:bionic texstudio
results in no GUI appears and the output
QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-'
libGL error: MESA-LOADER: failed to retrieve device information
libGL error: Version 4 or later of flush extension not found
libGL error: failed to load driver: i915
libGL error: failed to open drm device: No such file or directory
libGL error: failed to load driver: i965
dbus[1]: The last reference on a connection was dropped without closing the connection. This is a bug in an application. See dbus_connection_unref() documentation for details.
Most likely, the application was supposed to call dbus_connection_close(), since this is a private connection.
D-Bus not built with -rdynamic so unable to print a backtrace
However the only difference in the output compared to previous images (such as stretch) is the QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-'
.
Handling that:
First run
$xhost +
$xhost +local:docker
They are probably necessary (I am not sure that this helps) that docker can connect to the host's X-Server. This is a now security policy. Then:
$docker run --rm --cap-drop=all --net=host --volume=/tmp/.X11-unix:/tmp/.X11-unix --user=1000:1000 -e DISPLAY=unix:0 --volume=/home/raabf/.config/dockertexstudio:/home/.config/texstudio --volume=/home/raabf/:/home/raabf/ -e HOME=/home/ --name=texstudio_bionic --workdir=/home/ -e XDG_RUNTIME_DIR=/tmp/xdgruntime mytexstudio:bionic /bin/bash -c "mkdir /tmp/xdgruntime; chown 1000:1000 /tmp/xdgruntime; chmod 700 /tmp/xdgruntime; texstudio"
access control disabled, clients can connect from any host
libGL error: MESA-LOADER: failed to retrieve device information
libGL error: Version 4 or later of flush extension not found
libGL error: failed to load driver: i915
libGL error: failed to open drm device: No such file or directory
libGL error: failed to load driver: i965
dbus[11]: The last reference on a connection was dropped without closing the connection. This is a bug in an application. See dbus_connection_unref() documentation for details.
Most likely, the application was supposed to call dbus_connection_close(), since this is a private connection.
D-Bus not built with -rdynamic so unable to print a backtrace
/bin/bash: line 1: 11 Aborted (core dumped) texstudio
results in a coredump. Sadly there is no information what causes this error.
Possible resources:
https://github.com/jessfraz/dockerfiles/issues/155
https://github.com/chanezon/docker-tips/tree/master/x11 (for mac probably unrelated)