Назад | Перейти на главную страницу

Как перенаправить запрос на основе имени хоста в конкретный контейнер докеров

Я пытаюсь использовать подключение на основе имени хоста к контейнеру докеров. то есть: я подключаю свой браузер к web01.docker.example.org (предполагается, что DNS-запись с подстановочными знаками на * .docker.example.org указывает на мой докер-бокс). Как сделать так, чтобы докер пересылал этот запрос, например, докеру nginx?

Эта идея вдохновлена ​​моделью Apache VirtualNameHost, которая делает это, за исключением VirtualHost, а не работающего контейнера.

Вы хотите отправлять подключения к другому контейнеру Docker на основе имени хоста, которое использовалось для доступа к нему, используя один общедоступный IP-адрес?

В общем, это невозможно; docker работает с TCP или UDP-диалогами, а их конечные точки - это IP-адреса, а не имена хостов.

Если вы хотите сделать это с помощью HTTP, вы можете настроить контейнер обратного прокси, который будет ретранслировать HTTP-запрос на правильный компьютер. В противном случае вам придется использовать один отдельный IP-адрес для каждого контейнера.