我在 Docker 中有一个设置,用于在 Ubuntu 14.04.03 的 Docker 中运行 GUI 应用程序。
GUI 应用程序使用带有必要参数的脚本文件启动。如果应用程序只有一个窗口,则设置工作正常,我可以通过 X11 转发轻松查看结果。这是我用来运行应用程序的命令
sudo docker run -it \
-v /tmp/.X11-unix:/tmp/.X11-unix \
-e DISPLAY=$DISPLAY \
-w /Apps/ \
--rm appsdocker:v1 \
/bin/bash -c "./run_singleGUIapp.sh param1"
但是,如果 GUI 有一个按钮,单击该按钮会打开一个新窗口,则 GUI 应用程序将无法响应,并在一段时间后返回系统提示。
我尝试运行此链接中的示例,该链接解释了如何使用 X11 转发在 docker 上运行 firefox。一旦我在 Docker 中运行的 firefox 上搜索查询并尝试“在新窗口中打开”以获取任何后续命中,该应用程序就会工作。我假设它也会导致无响应行为,但似乎这不是一般情况,并且仅在我的脚本中持续存在。
我了解这是非常模糊的问题描述,因为我无法透露应用程序和环境的详细信息。任何有关如何处理自身产生的 GUI 应用程序的指针将不胜感激。