Вставьте ip родительского хоста Docker в файл хоста контейнера

Я новичок в Docker и пытаюсь понять, каков наилучший способ вставить ip родительского хоста docker в файл хоста контейнера.

Я использую следующую команду в моем Dockerfile

RUN /sbin/ip route|awk '/default/ { print $3,"\tdockerhost" }' >> /etc/hosts

но иногда хосты ip получают изменения, так что их больше неактуально...

Причина для этого, если вы спросите себя, заключается в том, что мне нужно получить доступ к еще двум контейнерам докеров (и ссылка не предлагает эту функцию).

Спасибо,

2 ответа

--add-host вариант сделан для этого. Итак, в вашем docker run команда, сделайте что-то вроде:

docker run --add-host dockerhost:`/sbin/ip route|awk '/default/ { print  $3}'` [my container]

--add-host опция может быть использована при создании / запуске вашего контейнера, но так как /sbin/ip Команда недоступна в операционных системах, таких как OSX, мы можем использовать более общее решение:
docker run --add-host=dockerhost:`docker network inspect \ --format='{{range .IPAM.Config}}{{.Gateway}}{{end}}' bridge` [IMAGE]

Другие вопросы по тегам