Привязать порт контейнера Docker к eth0 БЕЗ предоставления определенного IP-адреса - PullRequest
0 голосов
/ 06 февраля 2019

Я вижу, что я могу просто сделать docker run -p SOME_IP_ADDRESS:25:25, чтобы связать контейнеры с портом на некотором интерфейсе, но давайте скажем, что я использую puppet для раскрутки нескольких экземпляров, у которых есть контейнеры, запускающие докер, и я не обязательно знаю, чтоIP интерфейса экземпляра будет, тогда что?

Например, внутри /etc/systemd/system/SOME_APPLICATION.service находится моя команда ExecStart=/usr/bin/docker run -p 0.0.0.0:25:25 SOME_CONTAINER, поэтому, когда экземпляр запускается, Docker запускает мой контейнер.

Я не знаю, какой именно IPэкземпляра будет так, я не знаю, какой IP-адрес должен быть передан в docker run -p SOME_IP_ADDRESS:25:25.

Есть ли способ сделать что-то вроде docker run -p eth0:25:25, чтобы любой IP eth0 был IP-адресомдля привязки порта контейнера ??

1 Ответ

0 голосов
/ 06 февраля 2019

Мне просто пришлось использовать основные факты о марионетках https://puppet.com/docs/puppet/5.5/lang_template_epp.html

ExecStart=/usr/bin/docker run -p <%= $facts[networking][interfaces][eth0][ip] %>:25:25
...