Routage entre différents réseaux docker sur la même machine hôte

J'ai créé deux réseaux docker.

docker network create --subnet=172.18.0.0/16 Docker_network_1 docker network create --subnet=172.19.0.0/16 Docker_network_2 

Sur chacun d'eux, je cours deux conteneurs différents:

 docker run --rm -it --name Container_1 --net Docker_network_1 alpine /bin/sh docker run --rm -it --name Container_2 --net Docker_network_2 alpine /bin/sh 

Container_1 a IP 172.18.0.2 alors que Container_2 a IP 172.19.0.2 .

À partir de Container_1, je peux faire un ping l'interface docker IP 172.19.0.1 qui appartient à Docker_network_2 mais je ne peux pas faire de ping à Container_2 IP 172.19.0.2 .

Je ne comprends pas pourquoi le "routing" sur ma machine hôte semble correct:

 #route -n Kernel IP routing table Destination Gateway Genmask Flags Mesortingc Ref Use Iface 0.0.0.0 192.168.0.1 0.0.0.0 UG 1024 0 0 eth0 172.17.0.0 0.0.0.0 255.255.0.0 U 0 0 0 docker0 172.18.0.0 0.0.0.0 255.255.0.0 U 0 0 0 br-ea28cf2d7108 172.19.0.0 0.0.0.0 255.255.0.0 U 0 0 0 br-244606ad6705 

2 Solutions collect form web for “Routage entre différents réseaux docker sur la même machine hôte”

Les réseaux Docker ne sont pas conçus pour s'orienter entre eux, ils sont volontairement isolés afin que vous puissiez créer des groupes d'applications qui ne peuvent parler que. Je soupçonne que cela se fait dans les règles d'iptables, mais ne me citez pas à ce sujet.

Vous pouvez toutefois append un conteneur à plusieurs réseaux. Manuellement, cela se fait avec un docker network connect Docker_network_2 Container_1 command docker network connect Docker_network_2 Container_1 après la création du conteneur (vous pouvez split la command run dans une command create and start si vous devez vous connecter au réseau avant que votre point d'input ne démarre).

Docker compor est utile pour le câblage de plusieurs conteneurs set sur différents réseaux. Il vous permet de définir chacun des réseaux auxquels appartient chaque conteneur, ce qui élimine la nécessité d'exécuter plusieurs commands de docker network connect .

J'ai résolu le problème en supprimant la string DOCKER-ISOLATION que Docker met dans iptables:

 # iptables --flush DOCKER-ISOLATION 

Je ne sais pas si c'est une bonne approche du sharepoint vue de la security, mais cela fait ce dont j'ai besoin.

  • Logiciel pour diagnostiquer (ping) un réseau sur 24h?
  • Ouvrir les ports aux conteneurs Docker
  • Comment puis-je appliquer des routes préférentiels avec BGP & Quagga?
  • comment configurer le pare-feu avec l'utilitaire "psad" pour éviter l'parsing des ports
  • Expérience de latence élevée avec le server sans charge de server ni latence de routeur local
  • Atsortingbuer plusieurs IP et passerelle dans Ubuntu Server
  • Dossier partagé, interdire à l'user de supprimer des files
  • Réinitialisation à l'usine par défaut sur un Gigami GigaVUE-212
  • Existe-t-il un équipement qui se connecte à un réseau sans fil et fournit des ports Ethernet aux clients?
  • Relier ISC DHCPD à une interface virtuelle (battement de coeur)
  • KVM-Host a perdu la connection au stockage
  • Les astuces du serveur de linux et windows, tels que ubuntu, centos, apache, nginx, debian et des sujets de rĂ©seau.