2016-09-23 3 views
0

Я создаю рожок докеров, развертывая демон докеров и запуская контейнеры, связанные с роем (старый метод). Поскольку я развертываю его на облаке AWS, поэтому мой IP-адрес для прослушивания и рекламный IP-адрес различны. В настоящее время эта функция работает только в докере, только предоставляя --listen-addr и -advertise-addr.using listen-addr with docker daemon

Я хотел спросить, есть ли у докеров-демона такие функции?

ответ

1

С помощью dockerd вы можете определить --ip=0.0.0.0, который по умолчанию представляет собой интерфейс ip-интерфейса, когда он запускается. Значение по умолчанию 0.0.0.0 имеет тенденцию быть правильным для пользователей.

Вы также можете передать такой вариант, как -H tcp://127.0.0.1:2375, чтобы прослушивать IP-соединение для клиента вместо стандартного /var/run/docker.sock сокета (please use TLS if you listen on a public IP). Dockerd - это серверная половина клиентского серверного приложения, но по умолчанию он не прослушивает какой-либо IP-интерфейс.

Объявление adr не применяется вообще к dockerd, поскольку никакая его часть не подключается к хранилищу ключей/значений, чтобы рекламировать его местоположение, например, Рой.

+0

dockerd может не подключаться к хранилищу ключей/значений, но если вы запускаете контейнер докеров-докеров (в режиме управления или присоединения), используя это (sudo docker run -d -p 4000: 4000 swarm manage -H: 4000 --replication - -advertise 52.220.79.209:4000 consul: //52.220.92.249: 8500), то для -listen-addr и -advertise-addr нет отдельной опции. –

+0

В сценарии роя в контейнере для прослушивания addr подразумевается сопоставление портов и флаг -H для роя. Итак, в приведенном выше примере рой слушает 0.0.0.0:4000. – BMitch

Смежные вопросы