GNU/Linux >> Znalost Linux >  >> Panels >> Docker

Jak přidat nový záznam hostitele do /etc/hosts, když je spuštěn kontejner dockeru

Tento příspěvek ukazuje, jak přidat položky hostitele do /etc/hosts v kontejneru dockeru, když je spuštěn. Pro účely tohoto příspěvku používáme hostitele CentOS/RHEL 7. To by však mělo fungovat na jakémkoli hostiteli Linuxu, který je schopen provozovat nejnovější verze dockeru.

Obecně řečeno, soubor /etc/hosts nelze upravit před spuštěním kontejneru dockeru. Aktuální docker však má možnost „–add-host ” který při spuštění kontejneru přidá položky hostitele do /etc/hosts. Níže je uvedena syntaxe pro přidání položky hostitele při vytváření nového kontejneru dockeru.

$ sudo docker run --add-host [Hostname]:[IPAddress] -ti [Source_Container_Image] /bin/bash

Chcete-li například přidat nový záznam hostitele (192.168.0.1 host2.test.com), použijte následující příkaz:

$ 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

Příklad přináší /etc/hosts v novém kontejneru, který má host1.test.com a host2.test.com jako:

[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 /]#


Docker
  1. Jak spustit MySQL v Docker Container:Jednoduchý a snadno sledovatelný průvodce

  2. Jak Linux zpracovává více po sobě jdoucích oddělovačů cest (/home////username///soubor)?

  3. Jak spustit MySQL v kontejneru Docker

  1. Jak spustit program uvnitř kontejneru Docker?

  2. Jak připojit hostitelský adresář do kontejneru Docker

  3. Jak v mém souboru /etc/hosts/ v systému Linux/OSX vytvořím subdoménu se zástupnými znaky?

  1. Jak se aktualizuje /etc/motd?

  2. Jak spustit příkaz na spuštěném kontejneru Docker

  3. Jak získat přístup k síťovému jmennému prostoru Docker Container z hostitele