图像构build过程中的X11交互

我正在尝试为构build期间需要用户交互的图像创build一个Dockerfile。 我知道这是非常丑陋的,但没有简单的方法,因为它涉及使用专有安装程序安装传统软件。

一旦构build,容器将使用xpra通过Web套接字公开X11应用程序。

目前我通过创build一个卷并在第一次运行容器时进行安装。 但是,这会产生一些维护问题,因为我想将预先构build的映像发送到registry。

我愿意牺牲容器的自动化构build的可能性,因为它很less被重build,但经常部署。

我考虑过的事情:

  • 在构build期间运行xpra 。 那么我如何公开端口,以便我可以访问Web界面?
  • 在构build期间导出$DISPLAY 。 如何在构build期间隧道X11stream量?
  • 运行Xvfb并尝试使用例如xaut自动化该事物。 这将是长远目标,但并不容易。 我希望现在可以快速入侵。

我意识到这是Docker的一种反模式,也是Docker真正发光的一个用例:导出一个传统的应用程序,这是一个噩梦,以易于使用的格式从浏览器运行。