将Web客户端连接到dynamic产卵docker容器

我正在使用nodejs编写一个在线编码网站。 当用户请求时,我产生一个docker容器编译和运行他们的代码,然后删除它。 docker容器经过一段时间后停止并移除。

运行在容器内部的可执行程序使用客户端JavaScript库和在双方的docker集装箱上打开的特定端口与客户端浏览器进行实时通信。 (参考我使用这个JavaScript库http://robotwebtools.org/tools.html )这适用于单个用户。

然而,我需要一个解决scheme,当有多个同时用户,因此多个docker容器同时产生(由于多个同时请求),必须在不同的端口。 我需要一种方法来获取客户端JavaScript代码与唯一端口上相应的docker容器进行通信。 注意我正在为一台机器上的数十个用户同时寻找解决scheme,而不是大规模的扩展。 我可以想到两种方法来做到这一点。

(一)打开一些公共端口,让nodejs用一个唯一的端口产生docker容器,把这个唯一的端口发送给客户端代码。 我认为这会起作用,而且相当容易实施。 我不认为安全是一个问题,因为集装箱只是简单地连接到港口。 但是,有什么我忘记了?

(二)只打开一个公共端口,让nodejs产生一个独特的端口的docker集装箱,并让nodejs侦听公共客户端端口,并根据一些用户ID转发到正确的docker集装箱端口? 我甚至不知道如何在nodejs中做到这一点? 有什么我可以用来做到这一点?

这些都适合吗? 还是有另一种解决scheme? 如果B适当,我将如何识别每个用户的stream。 请注意,如果相关,我打算使用nginx作为反向代理。