Предоставление Docker Swarm контейнера с публичным IP-адресом хоста
Проблема:
Я пытаюсь развернуть глобальную службу экспорта узлов в кластере роя, используя файл docker-compose, и мне нужен доступ к фактическому IP-адресу узлов, который будет использоваться в качестве метки. Мой docker-compose.yml выглядит так:
...
environment:
- NODE_ID={{.Node.ID}}
volumes:
- /etc/hostname:/etc/nodename
...
{{.Node.ID}}
предоставляет мне идентификатор, как описано здесь.
Что я пробовал:
Путем монтажа /etc/hostname
в контейнер, я могу получить имя хоста, но я не смог найти каталог, который хранит ifconfig eth0
IPV4 на Ubuntu 18.04, чтобы сделать то же самое для IP. Я также проверил, есть ли шаблон как {{.Node.ID}}
использоваться в файле композиции безрезультатно.
Вопрос:
Есть ли способ запросить механизм докера предоставить IP-адрес контейнера перед его развертыванием?