Maison  >  Article  >  Opération et maintenance  >  Réseau de conteneurs Docker sous Linux : Comment mettre en place les connexions réseau et la communication entre conteneurs ?

Réseau de conteneurs Docker sous Linux : Comment mettre en place les connexions réseau et la communication entre conteneurs ?

王林
王林original
2023-08-01 18:41:221856parcourir

Réseau de conteneurs Docker sous Linux : Comment mettre en place la connexion réseau et la communication entre conteneurs ?

Lors de l'utilisation de Docker pour le déploiement d'applications, la connexion réseau et la communication entre les conteneurs sont un problème très important. Cet article explique comment configurer la connexion réseau d'un conteneur dans un environnement Linux et fournit quelques exemples de code courants.

Il existe plusieurs modes réseau parmi lesquels choisir dans Docker, les trois plus couramment utilisés sont : le mode pont, le mode hôte et le mode réseau Overlay. En mode pont, Docker créera une interface réseau virtuelle pour chaque conteneur et connectera les conteneurs via un pont réseau partagé. En mode hôte, le conteneur utilisera directement l'interface réseau de l'hôte. Le mode réseau Overlay fournit une solution pour la communication des conteneurs entre les hôtes.

Tout d’abord, expliquons comment configurer la connexion réseau du conteneur en mode pont. Nous pouvons utiliser les outils de ligne de commande de Docker ou Docker Compose pour y parvenir.

Utilisation de l'outil de ligne de commande :

docker run -d --name container1 --network bridge image1
docker run -d --name container2 --network bridge image2

Utilisation de Docker Compose :

version: '3'
services:
  container1:
    image: image1
    networks:
      - bridge
  container2:
    image: image2
    networks:
      - bridge
networks:
  bridge:
    driver: bridge

Dans l'exemple ci-dessus, nous avons créé deux conteneurs conteneur1 et conteneur2 et les avons connectés à un réseau appelé pont. Avec cette configuration, les conteneurs peuvent communiquer entre eux à l'aide de noms de conteneurs.

Voici un exemple de configuration de la connexion réseau d'un conteneur en mode hôte :

Utilisation de l'outil de ligne de commande :

docker run -d --name container1 --network host image1
docker run -d --name container2 --network host image2

Utilisation de Docker Compose :

version: '3'
services:
  container1:
    image: image1
    networks:
      - host
  container2:
    image: image2
    networks:
      - host
networks:
  host:
    driver: host

Dans cette configuration, les conteneurs utiliseront directement l'interface réseau de l'hôte, donc la communication peut être effectuée via l'adresse IP de l'hôte.

Enfin, nous introduisons les paramètres de communication inter-conteneurs en utilisant le mode réseau Overlay. Ce mode nécessite un déploiement à l'aide de Docker Swarm.

Tout d'abord, nous devons initialiser un Swarm :

docker swarm init

Ensuite, nous créons un réseau Overlay :

docker network create -d overlay my-network

Ensuite, nous créons un service et le connectons au réseau :

docker service create --name service1 --network my-network image1
docker service create --name service2 --network my-network image2

L'utilisation du mode réseau Overlay peut réaliser des héberger la communication du conteneur et assurer la sécurité et la fiabilité de la communication.

Pour résumer, cet article présente la méthode de configuration de la connexion réseau et de la communication des conteneurs Docker dans l'environnement Linux, y compris le mode pont, le mode hôte et le mode réseau Overlay. Ces méthodes peuvent être sélectionnées et utilisées en fonction de besoins spécifiques pour nous aider à mieux gérer le réseau de conteneurs lors de l'utilisation de Docker.

Les exemples de code sont uniquement à titre de référence. Veuillez effectuer les ajustements et configurations correspondants en fonction de la situation spécifique lors de l'utilisation réelle. Grâce à des paramètres réseau flexibles, nous pouvons facilement créer un système d’applications conteneurisées efficace et fiable.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn