docker nginx -прокси: как «свернуться» из одного контейнера в другой? - PullRequest
0 голосов
/ 24 марта 2020

У меня есть набор Docker контейнеров, которые сейчас используют образ php-fpm для размещения одного приложения, и контейнер nginx, который прямо сейчас предоставляет доступ к этому одному приложению. У меня есть третий контейнер, который периодически использует curl для стробирования URL в этом контейнере. Эта команда сейчас использует имя хоста nginx. (Изображение основано на alpine:latest ...)

/usr/bin/curl --silent -i http://nginx/secret_url ...

Теперь я хочу использовать nginx_proxy для Позвольте мне запустить более одного контейнера приложения. Но теперь, как команды curl узнают, как отправить запрос через nginx_proxy в соответствующий контейнер приложения? Каким будет разрешение имен?

... или это имеет значение? Если curl просто отправляет запрос во внутренней сети Docker (совместно используемой nginx_proxy), пытающейся подключиться к «порту 80», и в нем указывается любой выбранный URL-адрес, тем не менее запрос поступит на прокси-сервер, который затем отвечает за разрешение имени виртуального хоста ... который я знаю, что он будет делать ...? Что мне интересно, так это , как запрос curl на самом деле попадает на веб-сервер. Я просто запутываю себя?

Это, например, тот случай, когда nginx в приведенном выше URL-адресе может быть чем угодно?

1 Ответ

0 голосов
/ 24 марта 2020

В итоге я указал IPV4_ADDRESS контейнера nginx -прокси (в пределах Docker мостовой сети), , а затем указал его в файле /etc/hosts, который я загрузил в cronjob container.

Важно, что, хотя /etc/hosts в среде контейнера-хоста, вероятно, должно указывать 127.0.0.1, не будет работать в контейнере. Контейнер видит только «свою» сеть, поэтому с его точка зрения 127.0.0.1 будет ссылаться буквально на сам контейнер.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...