不同容器的相同泊坞窗图像

问题描述 投票:0回答:1

我有一个问题,也许是对码头图像的误解。

我需要为两个不同的项目运行两个单独的mongodb 3.6容器。但似乎如果使用相同的图像(mongo:3.6),那么容器将使用相同的数据,配置等...

我使用docker-compose来运行和管理我的容器。我的docker-compose.yml看起来像这样:

services:
    first-mongo:
        image: mongo:3.6
        container_name: first-mongo
        mem_limit: 4g
        restart: always
        ports:
            - '27017:27017'
        volumes:
            - ${FIRST_MONGO_DB_LOCAL_PATH}:/data/db
            - ${FIRST_MONGO_DB_LOCAL_DUMP_PATH}:/data/dumps
            - ${FIRST_MONGO_DB_LOCAL_SCRIPTS_PATH}:/data/scripts

    second-mongo:
        image: mongo:3.6
        container_name: second-mongo
        mem_limit: 4g
        restart: always
        ports:
            - '27018:27018'
        volumes:
            - ${SECOND_MONGO_DB_LOCAL_PATH}:/data/db
            - ${SECOND_MONGO_DB_LOCAL_DUMP_PATH}:/data/dumps
            - ${SECOND_MONGO_DB_LOCAL_SCRIPTS_PATH}:/data/scripts

所以,有了这个配置我的两个容器运行正常。但是,当我拿到第二个容器的IP地址并尝试连接到数据库时,我看到了与第一个容器中相同的数据。此外,当我更改某些内容时,更改会显示在两个容器/图像中。在本地,我在第一个和第二个容器中有不同的数据。

P.S当我将第二个容器的图像标记更改为例如mongo:3.5时,我会看到数据库(单独的数据等)。

我非常感谢任何帮助。谢谢!

docker docker-compose docker-image
1个回答
0
投票

我找到了解决这个问题的方法。我刚刚将second-mongo容器的端口配置更改为:

ports:
    - '27018:27017'

之前是27018:27018。说实话,我不知道它是如何相关的,但现在它对我有用。

感谢那些试图帮助我的人!

© www.soinside.com 2019 - 2024. All rights reserved.