🐳 Как добавить новую запись хоста в /etc/hosts при запуске Docker-контейнера

by itisgood

В этом руководстве показано, как добавлять записи хоста в /etc/hosts в контейнере Docker при его запуске.

Для этого мануала мы используем хост CentOS / RHEL 7.

Но это должно работать на любом хосте Linux, способном работать с последними версиями Docker.

Вообще говоря, файл /etc/hosts нельзя изменить перед запуском контейнера Docker.

Однако текущий Docker имеет опцию «–add-host», которая добавляет записи хоста в /etc/hosts при запуске контейнера.

Ниже приведен синтаксис для добавления записи узла при создании нового контейнера Docker.

$ sudo docker run --add-host [Hostname]:[IPAddress] -ti [Source_Container_Image] /bin/bash
Например, чтобы добавить новую запись хоста (192.168.0.1 host2.test.com), используйте следующую команду:
$ sudo docker run --add-host host1.test.com:192.168.0.1 --add-host host2.test.com:192.168.0.2 -ti source_container_image /bin/bash
В этом примере /etc/hosts добавлен в новый контейнер, в котором есть host1.test.com и host2.test.com, например:
[root@63933bfcd3d3 /]# cat /etc/hosts
127.0.0.1 localhost
::1 localhost ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
192.168.0.1 host1.test.com
192.168.0.2 host2.test.com
172.17.0.4 63933bfcd3d3

[root@63933bfcd3d3 /]#

You may also like

Leave a Comment