Networking je důležitým aspektem, Docker který umožňuje container
komunikovat mezi sebou a s vnější sítí. Zde je podrobný návod, jak se připojit a spravovat sítě v Docker:
Výchozí síť mostu
Docker poskytuje výchozí síť s bridge
názvem container
. Při vytváření container bez zadání sítě se automaticky připojí k výchozí bridge
síti.
Container s ve stejné bridge
síti mohou mezi sebou komunikovat pomocí svých interních IP adres. Docker poskytuje rozlišení DNS umožňující container komunikaci prostřednictvím doménových jmen.
Container
Propojování
Pomocí této --link
možnosti se můžete vzájemně propojit container
a umožnit tak komunikaci mezi nimi pomocí propojeného container názvu nebo proměnných prostředí.
Například, když spouštíte container
z obrázku s názvem webapp
, můžete jej propojit s MySQL container s názvem mysql
pomocí následujícího příkazu: docker run --name webapp --link mysql:mysql webapp-image
Vlastní sítě
Můžete vytvořit vlastní sítě, abyste Docker umožnili container komunikaci s v rámci stejné sítě.
Pomocí docker network create
příkazu vytvořte vlastní síť. Chcete-li například vytvořit síť s názvem my-network
, můžete použít příkaz: docker network create my-network
Připojení Container
k vlastním sítím
Při vytváření container
, použijte --network
možnost připojit container
k vlastní síti.
Chcete-li například připojit a container
k síti „moje síť“, můžete použít příkaz: docker run --network my-network my-image
Připojování Container
k hostitelské síti
Pomocí možností --publish
nebo --publish-all
připojte container
porty k portům na hostitelském počítači nebo k náhodným portům na hostiteli.
Chcete-li například připojit port 80 a container
k portu 8080 na hostiteli, můžete použít příkaz: docker run -p 8080:80 my-image
Využitím síťových funkcí v Docker, můžete spravovat konektivitu a komunikaci mezi sítěmi container
a sítěmi ve vašem Docker prostředí. To poskytuje flexibilní a škálovatelné prostředí pro vaše aplikace, které umožňuje bezproblémovou interakci mezi sebou navzájem a s externí sítí components
. container