从docker镜像运行多个服务器

Sre*_*ari 6 ubuntu node.js docker

我在nodejs上写了三个快速服务器.这些服务器用于不同的目的,因此在不同的端口上运行.

例如:8000上的app1.js,5000上的app2.js和5432上的app3.js.

我想使用docker文件创建一个docker镜像并运行所有这些服务器.我们可以这样做吗?如果是这样,我们怎么做呢?据我所知,我们只能从docker文件中运行一个命令.

小智 6

您可能希望了解如何使用Docker Compose.

每个服务器都将有自己的Dockerfile和你的搬运工,compose.yml文件将定义这些揭露他们的互动端口以及如何.


Shi*_*his 5

Ethan 建议的机制对于同时运行多个 docker 容器是正确的,但没有解释原因。

进一步解释一下,每个 docker 容器可以产生多个进程(服务器),但是 docker 容器需要其中一个进程处于前台,而 docker 容器生命周期通常反映了前台进程的生命周期。

当您在一个 docker 容器中运行所有进程时,将失去 dockerization 的许多好处。因此建议每个进程有一个 docker 容器。