在Dockerfile中运行多个命令

时间:2020-07-31 16:52:26

标签: docker dockerfile docker-machine docker-registry

我想先运行booksServer,然后再运行customersServer,然后运行main.js

但是在启动main.js之前,我想确保customersServer和booksServer首先运行。

如何正确执行此操作?

现在是我的dockerfile

FROM node:12.14.0
WORKDIR /usr/src/app
COPY package*.json ./
COPY . /usr/src/app
RUN npm install
RUN npm install nodemon -g
EXPOSE 4555
CMD nodemon /books/booksServer.js && nodemon /customers/customersServer.js && node /main/main.js

我知道通常您想为多个进程分离容器,但是这样做时我遇到gRPC问题。所以我现在想将其作为单个dockerfile进行尝试。

1 个答案:

答案 0 :(得分:0)

假设booksServer.jscustomersServer.js提供了用于通信的端口,您可以使用this脚本。该脚本通常用于等待其他服务准备就绪。