通过SSH在Docker上运行GUI程序

时间:2018-01-28 09:55:11

标签: user-interface docker ssh containers x11

所以我有Ubuntu无头服务器,我安装了docker。 我想在Docker容器中运行GUI应用程序,当我通过ssh连接时,在我的mac上看到它们。

我按照here

的说明操作

我做了什么: 1)在mac上安装xQuartz 得到了auth list cookie:

Cyrils-MacBook-Pro.local/unix:0  MIT-MAGIC-COOKIE-1  02f42525dec4a8b4ee2xxxxxx

2)通过ssh -X uname @ password

连接到我的远程服务器

3)在服务器上安装了xauth 得到了xauth cookie:

ubuntu/unix:10  MIT-MAGIC-COOKIE-1  0e6810e9913aca02e0xxxxxxx

4)将xauth cookie添加到容器中:来自服务器的那个和来自我的mac的那个

5)启动docker容器并安装firefox进行测试

6)在容器中安装xauth

7)将xauth cookie添加到容器中:来自服务器的那个和来自我的mac的那个

8)但是当我运行firefox(在容器内)时,我收到了这个错误:

Failed to connect to Mir: Failed to connect to server socket: No such file or directory
Unable to init server: Broadway display type not supported: localhost:10.0
Error: cannot open display: localhost:10.0

当我在容器中回显$ DISPLAY时,我有:

localhost:10.0

当我在服务器中回显$ DISPLAY时,我有:

localhost:10.0

当我在我的Mac上回显$ DISPLAY时,我有:

/private/tmp/com.apple.launchd.G35gSHS5qU/org.macosforge.xquartz:0

我已经在我的Mac(ssh_config)和我的服务器(sshd_config)上启用X11转发,当我输入我的容器并启动GUI应用程序时,我收到此错误:

X11 connection rejected because of wrong authentication.

错误很明显,但我不知道如何修复它。 在容器中,cmd xauth列表给我:

Cyrils-MacBook-Pro.local/unix:0  MIT-MAGIC-COOKIE-1  02f42525dec4a8b4ee2xxxxxx
ubuntu/unix:10  MIT-MAGIC-COOKIE-1  0e6810e9913aca02e0xxxxxxx

在服务器中,cmd xauth列表给我:

Cyrils-MacBook-Pro.local/unix:0  MIT-MAGIC-COOKIE-1  02f42525dec4a8b4ee2xxxxxx
ubuntu/unix:10  MIT-MAGIC-COOKIE-1  0e6810e9913aca02e0xxxxxxx

在我的Mac中,cmd xauth给我:

Cyrils-MacBook-Pro.local/unix:0  MIT-MAGIC-COOKIE-1  02f42525dec4a8b4ee2xxxxxx

0 个答案:

没有答案