Maison >base de données >tutoriel mysql >Comment puis-je vérifier de manière fiable la préparation de la base de données MySQL dans un environnement Docker Compose ?
Docker-Compose : Vérification de l'état de préparation de la connexion MySQL
Dans un environnement Docker Compose, il est essentiel de s'assurer que votre conteneur d'application ne démarre pas opérations jusqu'à ce que le conteneur de base de données soit pleinement opérationnel et prêt à accepter les connexions. C'est là que les fonctionnalités depend_on et healthcheck entrent en jeu.
Dans votre configuration, le conteneur d'application dépend du conteneur de base de données, qui est défini avec un contrôle de santé pour déterminer quand il est prêt à être utilisé. Cependant, aucun des tests de contrôle de santé mentionnés dans votre message (création d'un répertoire, vérification de la version ou ping de l'administrateur) n'est un indicateur fiable de l'état de préparation de la base de données.
Un contrôle de santé plus efficace implique d'utiliser l'outil mysqladmin pour tester si MySQL accepte les connexions :
healthcheck: test: ["CMD", "mysqladmin" ,"ping", "-h", "localhost"] timeout: 20s retries: 10
Avec ce contrôle de santé en place, le conteneur d'application attendra que le conteneur de base de données réussisse ce test, garantissant ainsi que la base de données est pleinement opérationnelle avant en cours.
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!