Дайте контейнерам Docker IP — адреса из сети хоста с помощью DHCP

#docker #ip #portainer

Вопрос:

Я пытаюсь предоставить своим контейнерам Docker IP-адреса из сети хоста, используя DHCP.

Чтобы лучше объяснить, хост Docker имеет IP 192.168.1.5/24, и я хочу, чтобы контейнеры автоматически получали IP-адреса от DHCP-сервера в сети 192.168.1.0/24 (например, container1 получает IP 192.168.1.129).

Я пробовал как с macvlan, так и с ipvlan, например, используя эту команду

 docker network create -d macvlan 
--subnet=192.168.1.0/24 
--gateway=192.168.1.1 
-o parent=eth0 
network-bridged
 

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

Надеюсь, что кто-нибудь сможет мне помочь

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

1. Как вы назначаете определенные IP-адреса другим процессам, которые не выполняются в контейнерах? (Обычно вы не беспокоитесь о внутренних IP-адресах контейнера; с внешнего хоста вы не можете сказать, находится ли данный сетевой прослушиватель в контейнере или нет.)