docker集装箱的Web控制台

情况

  1. 有一个名为“app-data”的数据专用容器
  2. 有一个复印机的容器工人

最初创build应用程序/数据就是这样,它的状态是“停止”/退出。 然后,复印机工作人员将一些文件复制到应用程序/数据卷中,例如server.py

好吧,这样做是这样的:

 docker run --rm --volumes-from app-data /somelocation/server.py ~/www/ 

复印机需要2个参数,要复制的文件和复制的位置

有了这个,我可以运行一个名为app / serve的映像来服务卷中的文件,如下所示:

 docker run --volumes-from app-data -d -P app/serve 

图像入口点做这个http-server,而workdir与数据量相同,所以它会运行

地狱是的,它的工作原理,可以在主机上访问python web应用程序,像这样:0.0.0.0:49124,因为应用程序/服务映像暴露了由sever.py脚本使用的端口5000

我有上面的工作,你可以集中在下面。

所以应用程序可以运行? 但我想做更复杂的事情,只是运行应用程序(我运行应用程序使用远程API),如果我想运行应用程序使用连接到docker集装箱的Web控制台。

我的想法是如何可能的

  1. 使用term.js
  2. 暴露2个端口,例如(4000,5000)
  3. 使用端口4000,以便当term.js在端口4000中执行时,它将生成一个高端端口供客户端在Web控制台套接字连接中使用
  4. 使用端口5000允许任何运行在端口5000上的Web应用程序将在另一个高端端口中可用,以便像0.0.0.0:49124那样访问

这是一个runnable / dockworker如何执行的原型实现,对于nodejs我还是一个新的东西,这就是为什么我不能理解它们是如何实现的,这个想法是否会有一个function较less的简单执行?