Задать вопрос
lamo4ok
@lamo4ok
Программист

Как настроить два контейнера Docker таким образом, чтобы один из них мог совершать HTTP-запросы к другому?

Имеется три службы в docker-compose.json (на самом деле больше, но они нам не важны): app1 (php-fpm), nginx и app2 (php-fpm). App1 должна иметь возможность ходить по HTTP к app2 (делать вызовы к синхронному API). Проблема в том, что все инструкции, которые я смог найти в сети, рассказывают, как сделать доступной ту или иную службу для таких запросов извне Docker, и это работает, обе службы отвечают на запросы извне. А вот изнутри так не работает, пробовал достучаться и через имя службы, и через ее адрес, который сделан доступным извне, по разным портам. App1 видит app2 (у них есть общая есть internal), но в итоге получаю либо такой ответ:

curl: (7) Failed to connect to app2 port 80: Connection refused

либо такой, в зависимости от того, куда пробую достучаться:

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

Подскажите, пожалуйста, что нужно учесть в этом случае или же дайте сразу ссылку на готовую инструкцию. Если необходимо, приложу в вопрос docker-compose.json, конфигурационные файлы образов служб, и тп.
  • Вопрос задан
  • 175 просмотров
Подписаться 1 Простой Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы