У меня проблемы с подключением одного экземпляра контейнера ECS ( www, python ) к другому экземпляру контейнера ( redis ).
Я получаю "connecting to 0.0.0.0:6379. Connection refused" error from the www container
.
Оба экземпляра работают на одном хосте и были созданы с использованием двух определений задач, каждое из которых содержит один образ докера.
Оба используют режим сетевого моста.Каждое задание выполняется с помощью службы.
Я также настроил обнаружение служб для обеих служб.
Что я сделал и попробовал:
- Убедитесь, что Redis связан с
0.0.0.0
а не 127.0.0.1
- Добавлены сопоставления портов для
www (80)
и redis
контейнера (6379)
- ssh'ed в экземпляр
ec2
, чтобы убедиться, что сопоставления портов в порядке,Я могу telnet к обоим портам 80
и 6379
, подключенным к экземпляру www
и протестированным с помощью консоли python, если 0.0.0.0:6379
был доступен.
Это не былот дело.Я также попытался с докером (Redis) IP-адрес 172.17.0.3
без удачи.Я также безуспешно пытался использовать имя обнаружения службы .local контейнера redis
.Имя обнаружения службы не удалось разрешить
при разрешении имени обнаружения службы из контейнера ec2 (с использованием dig): that did work but returned a 10.0.* address
Янемного вне варианта, почему это так.Очевидно, что все работает на локальной машине разработки.
Обновление 10/5: я изменил контейнерную сеть на тип " host" , который, кажется, работает.Все еще не понимая, почему «мост» не будет работать.