Réseau Docker
Avoir une bonne connaissance du réseau Docker est relativement important afin de pouvoir faire des tests inter-conteneurs.
I. Création d’un réseau Docker simple
1. Créer un réseau
docker network create monreseau
2. Lancer deux conteneurs et les connecter au réseau docker que nous venons de créer
docker run -d -ti --name ubuntu1 --network monreseau ubuntu:1.0
docker run -d -ti --name ubuntu2 --network monreseau ubuntu:1.0
(I) Info
Il faut que les conteneurs soient capables d’envoyer des pings, ici j’ai utilisé des conteneurs customisés car l’image ubuntu par défaut n’a pas le paquet pour l’envoi de pings, il peut être installé manuellement il s’agit de iputils-ping
3. Se connecter à l’un des deux conteneurs
docker exec -ti ubuntu1 bash
4. Vérfier que le premier conteneurs puisse joindre le deuxième
docker exec -ti ubuntu1 bash
root@b8e781ade2b3:/# ping ubuntu2
PING ubuntu2 (192.168.64.3) 56(84) bytes of data.
64 bytes from ubuntu2.monreseau (192.168.64.3): icmp_seq=1 ttl=64 time=0.075 ms
64 bytes from ubuntu2.monreseau (192.168.64.3): icmp_seq=2 ttl=64 time=0.071 ms
On peut constater que la machine ubuntu2 réponds bien aux pings, et que le réseau est bien monréseau
(I) Info
On peut également vérifier l’adresse IP du conteneur en installant le paquet iproute2
root@4a16227b6747:/# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
2914: eth0@if2915: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default
link/ether 02:42:c0:a8:40:03 brd ff:ff:ff:ff:ff:ff link-netnsid 0
inet 192.168.64.3/20 brd 192.168.79.255 scope global eth0
valid_lft forever preferred_lft forever
II. Gestion des réseaux Docker
Lister les réseaux Docker
docker network ls
Supprimer un réseau Docker
docker rm iddureseau
OU
docker rm nomdureseau