Maison >base de données >tutoriel mysql >Comment puis-je me connecter à un conteneur Docker MySQL depuis ma machine hôte ?

Comment puis-je me connecter à un conteneur Docker MySQL depuis ma machine hôte ?

Linda Hamilton
Linda Hamiltonoriginal
2024-11-30 06:18:18958parcourir

How Can I Connect to a MySQL Docker Container from My Host Machine?

Connexion à MySQL dans un conteneur Docker à partir de l'hôte

Vous souhaitez établir une connexion à une instance MySQL exécutée dans un conteneur Docker à partir de votre machine hôte. Malgré vos efforts, vos tentatives ont échoué.

Configuration Docker

Votre Dockerfile configure :

  • Image de base Ubuntu 14.04.3
  • Installation du serveur MySQL
  • Modification de my.cnf pour désactiver la liaison à localhost
  • Exposition du port 3306
  • Démarrage MySQL et surveillance des journaux lors de l'exécution du conteneur

Problèmes de connectivité de l'hôte

Malgré un démarrage réussi du conteneur et l'accessibilité de MySQL au sein du conteneur, vous rencontrez une erreur lors de la tentative pour vous connecter depuis l'hôte :

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)

Solution : Spécifiez l'hôte, le port et le protocole

Pour établir une connexion de l'hôte au conteneur MySQL, vous devez spécifiez les paramètres suivants dans la commande mysql :

  • Hôte : localhost
  • Port : Port transféré par Docker (12345 dans votre cas)
  • Protocole : tcp (puisque le socket MySQL n'est pas disponible dans le conteneur )

La commande corrigée devrait être :

mysql -h localhost -P 12345 --protocol=tcp -u root

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