Notes d'étude Docker-Bridge Network

Le réseau de Docker peut être divisé en Bridge, Host, Overlay, None et Macvlan. Parmi eux, le type par défaut est le type de pont. Jetons un coup d'œil à quelques commandes et configurations courantes.

Semblable à la machine virtuelle et à la relation réseau de l'hôte, l'hôte du conteneur peut également avoir différents réseaux. Les conteneurs sur le même réseau peuvent communiquer entre eux.

Notes d'étude Docker-Bridge Network

Exemple 1

Créez un réseau Bridge, spécifiez le sous-réseau et la passerelle

docker network create --subnet 10.1.0.0/24 --gateway 10.1.0.1 br02

Vérifiez-le après la création et découvrez qu'il existe une interface réseau supplémentaire sur notre hôte, qui se trouve être notre adresse de passerelle

Notes d'étude Docker-Bridge Network

Découvrez le contenu spécifique de ce réseau

Notes d'étude Docker-Bridge Network

Exemple 2

Supprimez d'abord le réseau précédent, puis créez-en un nouveau. Cette fois, la plage d'adresses IP et l'étiquette sont également spécifiées sur la base de l'exemple 1.

docker network prune
docker network create --subnet 10.1.0.0/16 --gateway 10.1.0.1 \
--ip-range=10.1.4.0/24 --driver=bridge --label=host4network br04

Notes d'étude Docker-Bridge Network

Créer un nouveau conteneur sur notre réseau


docker container run --name network-test01 -it --network br04 centos /bin/bash

Ensuite, installez les outils réseau

yum update -y
yum install -y net-tools

Vérifiez ensuite l'adresse

Notes d'étude Docker-Bridge Network

Découvrez la passerelle

netstat -rn

Notes d'étude Docker-Bridge Network

Jetez un œil au DNS

cat /etc/resolv.conf

Notes d'étude Docker-Bridge Network

Exemple 3

Attribuer une adresse IP spécifiée au conteneur

docker container run -d --name network-test02 --ip 10.1.4.102 --network br04 nginx

Notes d'étude Docker-Bridge Network

Exemple 4

Connectez 2 conteneurs dans un réseau

Créez d'abord un réseau localhost

docker network create -d bridge --internal localhost

Ensuite, créez un nouveau conteneur Mysql sur ce réseau

<br/>docker container run -d --name test_mysql \<br/>-e MYSQL_ROOT_PASSWORD=P4sSw0rd0 \<br/>--network localhost mysql:5.7<br/>

Notes d'étude Docker-Bridge Network

Créer un nouveau conteneur sur le réseau Bridge

<br/>docker container run -it --name ping-mysql \<br/>--network bridge \<br/>centos<br/>

Il ne peut pas envoyer de ping pour le moment, car il appartient à un autre réseau

Notes d'étude Docker-Bridge Network

Mais si vous l'ajoutez à notre réseau localhost, vous pouvez communiquer les uns avec les autres

docker network connect localhost ping-mysql

Notes d'étude Docker-Bridge Network

Si vous cochez, vous pouvez voir qu'il appartient à deux réseaux
docker container inspect ping-mysql

Notes d'étude Docker-Bridge Network

Exemple 5

Nous créons un conteneur nginx dans notre réseau localhost

docker container run -d --name private-nginx -p 8081:80 --network localhost nginx

Trouvé qu'il est inaccessible de l'extérieur
Notes d'étude Docker-Bridge Network

Mais il est accessible de l'intérieur

Notes d'étude Docker-Bridge Network

Je suppose que tu aimes

Origine blog.51cto.com/beanxyz/2676182
conseillé
Classement