Одинаковое изображение докера для разных контейнеров - PullRequest
0 голосов
/ 28 августа 2018

У меня есть одна проблема и, возможно, недоразумение с образами докеров.

Мне нужно запустить два отдельных контейнера 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, я вижу базу данных так, как хочу (отдельные данные и т. Д.).

Буду очень признателен за любую помощь. Спасибо!

1 Ответ

0 голосов
/ 30 августа 2018

Я нашел решение этой проблемы. Я только что изменил конфигурацию портов второго монго контейнера:

ports:
    - '27018:27017'

До этого было 27018: 27018 . Если честно, я не знаю, как это было связано, но сейчас это работает для меня.

Спасибо за людей, которые пытались мне помочь!

...