Hello,
Since version 4.1 I'm unable to start a docker inside x2go which uses X.
(Ubuntu 16.04 x64 x2goserver from ppa
In the past, I edited /usr/bin/x2gostartagent and removed the "-nolisten tcp" part, and edited /etc/x2go/x2goagent.options to remove "-nolisten tcp"
It's not working, even a simple xeyes docker fails to open display:
vdheuvel@arthur:/data/home/vdheuvel$ docker run --rm -it --net=host -e DISPLAY -v $HOME/.Xauthority:/root/.Xauthority fr3nd/xeyes No protocol specified Error: Can't open display: :50.0
From my laptop it works without problems.
Anyone ?
Thanks !
Regards,
Bas van den Heuvel
On Fri, Apr 13, 2018 at 1:54 PM, Bas van den Heuvel <bas@better-it-solutions.nl> wrote:
Hello,
Since version 4.1 I'm unable to start a docker inside x2go which uses X.
(Ubuntu 16.04 x64 x2goserver from ppa
In the past, I edited /usr/bin/x2gostartagent and removed the "-nolisten tcp" part, and edited /etc/x2go/x2goagent.options to remove "-nolisten tcp"
This is not wrong, however I noticed that nxagent is running with that option appearing twice in the command line. Can you please check how the nxagent process is called (cat /proc/$(pidof nxagent)/cmdline?
Uli
I'm not seeing it in the commandline:
root@arthur:/data/home/vdheuvel/Desktop# cat /proc/$(pidof nxagent)/cmdline nxagent-dpi144-D-auth/home/vdheuvel/.Xauthority-geometry1920x1080-nameX2GO-vdheuvel-50-1523565438_stDXFCE_dp24:50
On 13-04-18 15:39, Ulrich Sibiller wrote:
Hello,
Since version 4.1 I'm unable to start a docker inside x2go which uses X.
(Ubuntu 16.04 x64 x2goserver from ppa
In the past, I edited /usr/bin/x2gostartagent and removed the "-nolisten tcp" part, and edited /etc/x2go/x2goagent.options to remove "-nolisten tcp" This is not wrong, however I noticed that nxagent is running with that
On Fri, Apr 13, 2018 at 1:54 PM, Bas van den Heuvel <bas@better-it-solutions.nl> wrote: option appearing twice in the command line. Can you please check how the nxagent process is called (cat /proc/$(pidof nxagent)/cmdline?
Uli
In the past, I edited /usr/bin/x2gostartagent and removed the "-nolisten tcp" part, and edited /etc/x2go/x2goagent.options to remove "-nolisten tcp"
It's not working, even a simple xeyes docker fails to open display:
vdheuvel@arthur:/data/home/vdheuvel$ docker run --rm -it --net=host -e DISPLAY -v $HOME/.Xauthority:/root/.Xauthority fr3nd/xeyes No protocol specified Error: Can't open display: :50.0
Makes sense, since it sounds like the UNIX socket is not passed through to the container.
I'm not sure why your TCP workaround worked in the past, though. The DISPLAY syntax should be local-socket-specific (either UNIX socket or abstract UNIX socket), without a fallback to TCP.
To use TCP connections, you'd have to specify DISPLAY=localhost:50.
The more curious thing here is that normally Xlib tries to connect via an abstract UNIX socket, which theoretically should be also available in a container - unless docker prohibits that, which would be plausible for security reasons.
Mihai
I've tried all variations of $DISPLAY.
Also tried to use xhost+ etc. etc.
and my firefox docker contains the X unix socket.
It works on my laptop without additional work (same docker version)
It works on the x2go machine (connected through VNC/Spice) when I issue xhost + first
It simply doesn't work when I use the x2go display
Any ideas ?
It worked before, just don't know what did change
On 14-04-18 01:43, Mihai Moldovan wrote:
- On 04/13/2018 01:54 PM, Bas van den Heuvel wrote:
In the past, I edited /usr/bin/x2gostartagent and removed the "-nolisten tcp" part, and edited /etc/x2go/x2goagent.options to remove "-nolisten tcp"
It's not working, even a simple xeyes docker fails to open display:
vdheuvel@arthur:/data/home/vdheuvel$ docker run --rm -it --net=host -e DISPLAY -v $HOME/.Xauthority:/root/.Xauthority fr3nd/xeyes No protocol specified Error: Can't open display: :50.0 Makes sense, since it sounds like the UNIX socket is not passed through to the container.
I'm not sure why your TCP workaround worked in the past, though. The DISPLAY syntax should be local-socket-specific (either UNIX socket or abstract UNIX socket), without a fallback to TCP.
To use TCP connections, you'd have to specify DISPLAY=localhost:50.
The more curious thing here is that normally Xlib tries to connect via an abstract UNIX socket, which theoretically should be also available in a container - unless docker prohibits that, which would be plausible for security reasons.
Mihai