在主机上不使用X-server的情况下在Docker中运行xterm

我有点卡住了 有很多post如何将你的主机显示到Docker容器。 他们似乎没有为我工作,或者我做错了什么。

情况如下:

我有一台运行Docker容器C的主机Linux机器H.主机H没有x服务器。 我正在桌面机器D上启动一个新的terminal窗口,然后键入:

desktop_D:> ssh -X machine_H machine_H:> export XAUTH=/tmp/.docker.xauth machine_H:> xauth nlist $DISPLAY | sed -e 's/^..../ffff/' | xauth -f $XAUTH nmerge - machine_H:> docker run -it -e DISPLAY -v /tmp/.X11-unix:/tmp/.X11-unix -v $XAUTH:$XAUTH -e XAUTHORITY=$XAUTH opensuse-image /bin/bash inside_docker:> xterm xterm: Xt error: Can't open display: localhost:16.0 

如果我在我的台式机上运行docker – 一切正常。 在将显示传递给docker工人时,我猜测事情并不正确。 任何帮助,将不胜感激!

PS我想在容器中运行一个SSH服务器的方法应该改变一些东西 – 但这很难看。