У меня есть определение задачи, которое определяет два контейнера: "orion" и "mongo".Определение задачи запускает экземпляр EC2 в режиме сети Bridge.
Контейнер mongo имеет порт хоста и контейнера: 27017, когда вы входите в ssh в экземпляр и в контейнер, вы видите, что mongo работает правильно.Вы также можете убедиться в этом, проверив журналы контейнера.
У контейнера orion есть порт хоста и контейнера: 1026, контейнер работает, но, просматривая журналы, он возвращает эту ошибку:
время = среда 01 мая 12:34:38 2019.979Z |lvl = ОШИБКА |corr = N / A |транс = н / д |от = N / A |srv = N / A |subsrv = N / A |comp = Orion |op = mongoConnectionPool.cpp [152]: mongoConnect |msg = Ошибка запуска базы данных (невозможно подключиться к mongo - выполняется 100 повторных попыток с интервалом в 1000 микросекунд)
, что, если я понимаю, означает, что она не может подключиться к базе данных mongo.
Контейнер orion также имеет следующую команду: ["-dbhost 0.0.0.0:27017"], которая предназначена для регистрации хоста и порта для подключения к базе данных.Я перепробовал все варианты «0.0.0.0», «localhost», «mongo», но ни один из них не работает.
Я ввел ssh в каждый контейнер, и оба могут пропинговать друг друга по их IP-адресам.
Когда я создаю сеть Docker локально с моим файлом compose, он работает нормально, единственная разница в том, где команда orion: -dbhost mongo-cb.docker:27017
mongo-cb.docker - псевдоним для контейнера mongo.
Я ожидаю, что контейнер orion раскрутится и правильно подключится к базе данных mongo в контейнере mongo.
ps Я не волшебник докера и не разработчик devops, поэтому любые объяснения были бы полезны наряду с тем, как это сделать.