无法从Windows容器显示GUI应用程序

时间:2019-05-17 04:22:22

标签: docker

我有一个带有GUI应用程序的映像,带有Microsoft / windowsservercore的基本映像。应用程序已正确安装在映像中,但是我无法在主机上显示它。已经在Google上阅读了几篇有关此的文章,他们建议安装XServer for Windows,然后我们可以在主机上显示该应用程序。我一直在尝试运行以下命令(如大多数文章中所建议的那样),但是它什么也没做,而且我没有得到显示。请协助。

docker run --rm -it -e DISPLAY=127.0.0.1:0.0 eft

1 个答案:

答案 0 :(得分:1)

DISPLAY对于Linux容器很有用。

mentioned here

  

WindwosServerCore映像没有用于UI应用程序的二进制文件,因此我怀疑这是否可以在servercore映像中使用,但是Microsoft内部人员可以使用新的更大的WindwosServer映像,我相信这些映像是完整的。

thread adds

  

我知道您可以运行GUI应用程序,但是渲染的元素不会显示在任何桌面上。 Lars Iwer [MSFT]在文章下面的讨论中写道:

     
    

在目前的容器映像中,GUI元素将在会话0中呈现。UI自动化应该与此配合(例如,以编程方式搜索窗口等)。

  
     

会话0是运行所有系统服务的会话,并且根据定义是非交互式的。会话,工作站和桌面是Windows(NT)中的隔离手段,应用程序是否可以显示UI并接收用户交互取决于它是否可以通过桌面访问工作站。
  默认情况下,会话0中的进程没有该进程。
  但是,过去曾经可以“允许服务与桌面进行交互”,并且还可以在会话0以外的其他会话中运行交互服务(请注意“目前如此”)。因此,很高兴听到Microsoft / Docker团队对此提供的一些专业见解...