如何使用Docker容器在两个不同的端口上启动相同的Docker容器?

时间:2020-07-05 14:55:57

标签: node.js reactjs docker docker-compose

由于产品和用户使用所有相同的文件,因此只能在不同的端口上运行,那么如何才能在两个不同的端口上两次运行同一容器?

   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

      

1 个答案:

答案 0 :(得分:0)

您可以关注本文。 https://medium.com/@karthi.net/how-to-scale-services-using-docker-compose-31d7b83a6648

这个想法很简单,使用一个容器并将docker容器与主机的多个端口号对应。为此,您需要缩放容器并在docker-compose.yml中告诉我容器的端口已与主机的这些端口进行了映射。

 users:
    build: 
        context: './backend'
    ports: 
        - "8081-8082:8081"
    command: node services/auth.js

和docker-compose up命令将是:

docker-compose -f "docker-composetest.yml" up --scale users=2 -d --build