Maison  >  Article  >  base de données  >  Comment accéder à un conteneur MySQL à partir d'autres conteneurs dans Docker sans adresses IP ?

Comment accéder à un conteneur MySQL à partir d'autres conteneurs dans Docker sans adresses IP ?

Patricia Arquette
Patricia Arquetteoriginal
2024-10-26 04:42:30308parcourir

How to Access a MySQL Container from Other Containers in Docker Without IP Addresses?

Accès au conteneur MySQL à partir d'autres conteneurs sans adresses IP

Dans un environnement Docker, vous pouvez rencontrer le besoin de vous connecter à un conteneur MySQL à partir d'un autre conteneur. S'il est possible d'établir une connexion en utilisant l'adresse IP du conteneur MySQL, cette approche manque de flexibilité. Pour améliorer l'accessibilité, des méthodes alternatives existent.

Une solution recommandée consiste à utiliser des réseaux définis par l'utilisateur. Cette méthode offre plusieurs avantages par rapport à l'ancien indicateur --link :

  • Configuration simplifiée : Les réseaux définis par l'utilisateur vous permettent de spécifier un réseau commun pour tous les conteneurs qui nécessitent une communication.
  • Flexibilité améliorée : Les conteneurs sur le même réseau peuvent communiquer de manière transparente sans recourir à des adresses IP statiques.

Pour utiliser des réseaux définis par l'utilisateur, suivez ces étapes :

  1. Créez un réseau personnalisé :
docker network create my_network
  1. Exécutez les conteneurs sur le réseau créé :
docker run -d --name php_container --network my_network my_php_image

docker run -d --name mysql_container --network my_network my_mysql_image

Une fois le les conteneurs s'exécutant sur le même réseau, ils peuvent communiquer en utilisant les noms de conteneurs de chacun comme noms d'hôte. Dans ce scénario, le conteneur PHP peut établir une connexion au conteneur MySQL à l'aide du code suivant :

<code class="php">$mysqli = new mysqli("mysql_container", "mattia", "prova", "prova");</code>

En tirant parti des réseaux définis par l'utilisateur, vous pouvez obtenir une communication transparente de conteneur à conteneur sans recourir à l'IP. adresses, améliorant la flexibilité et simplifiant la configuration dans votre environnement Docker.

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