Почему я не могу подключиться к удаленной службе из моего контейнера docker

#docker #curl #docker-networking

#докер #завиток #docker-сеть

Вопрос:

У меня есть контейнер docker, который работает в рамках многоконтейнерной установки с использованием docker-compose, он работает как веб-сервер и предоставляет доступ к порту 80. (80: 80) и он работает нормально, и у меня нет проблем с веб-сайтом или подключениями к базе данных (которая находится на другом контейнер в пределах одной сети с мостовым типом)

Я пытаюсь выполнить запрос к удаленному сервису / API, который работает на другом порту (8484), например:

 curl -X GET "http://10.10.110.110:8484/someURI/v1/getSomeData?param=value" -H "accept: application/json"
 

Когда я пытаюсь выполнить curl через свой PHP-код или даже из подключенной оболочки, это занимает много времени, и в конце я получаю следующую ошибку.

 curl: (56) Recv failure: Connection reset by peer
 

Однако выполнение того же curl с хост-компьютера или других компьютеров отвечает напрямую.

Я застрял с этим, я был бы признателен за любую помощь.

Ответ №1:

Не могу прокомментировать, поскольку у меня недостаточно точек доступа в Интернет, но я ожидаю, что это сработает, но в зависимости от того, где находится ваш контейнер docker, может быть сетевой брандмауэр, блокирующий ваш запрос. Это объясняет, почему внутренняя сеть docker работает для вас, но не для этой внешней части…

Где вы запускаете контейнеры? Локально или где-то размещено?

Комментарии:

1. Контейнеры работают локально на моем компьютере с Ubuntu.