【发布时间】:2020-10-25 18:24:05
【问题描述】:
既然产品和用户使用所有相同的文件,只是在不同的端口上运行,我怎么能在两个不同的端口上运行同一个容器两次?
version: "3.8"
services:
users:
build:
context: './backend'
ports:
- "8081:8081"
command: node services/auth.js
products:
build:
context: './backend'
ports:
- "8080:8080"
command: node services/products.js
reactapp:
stdin_open: true
tty: true
build:
context: './frontend/expense-calculator'
ports:
- "3000:3000"
command: npm start
【问题讨论】:
-
ports:中的第二个数字需要与容器内的进程正在侦听的端口号相匹配。如果这些都是在端口 3000 上侦听的 Express 应用程序,那么您可以声明 例如8080:3000将主机端口 8080 映射到该容器端口。您是否遇到了特定问题或错误消息? -
这是你想要的吗?
docker container port map with host machine's 2 different ports -
我有 2 个 express 服务器,一个是 products.js,另一个是 auth.js,一个是 react app。该文件运行良好,但由于产品和用户最初是同一个容器,我不想构建它两次。所以我问我是否可以用不同的命令启动它两次
标签: node.js reactjs docker docker-compose