Vérifier si le service MySQL d'un conteneur Docker est prêt
Publié le 03/09/2020 • Actualisé le 03/09/2020
Dans le bout de code précédent nous avons vu comment faire pour un service Postgres; cette fois-ci cela concernera MySQL. Le processus est similaire mais il y a une légère différence puisqu'il n'existe pas d'équivalent à pg_isready
pour MySQL. Donc nous devons chercher dans le résultat de la commande mysqladmin ping
pour voir si le service est en vie (alive). Changez le paramètre sb-db
pour le nom de votre conteneur Docker MySQL. Jetez un coup d'œil à mon Makefile complet pour voir comment j'appelle ce script dans la cible run
.
#!/bin/sh
# https://stackoverflow.com/q/42567475/633864
seconds=1
until docker container exec -it strangebuzz-db-1 mysqladmin -h 127.0.0.1 ping -P 3306 -proot | grep "mysqld is alive" ; do
>&2 echo "MySQL is unavailable - waiting for it... 😴 ($seconds)"
sleep 1
seconds=$(expr $seconds + 1)
done
sleep 1
Plus sur Stackoverflow Lire la doc Snippet aléatoire
A vous de jouer !
Ces articles vous ont été utiles ? Vous pouvez m'aider à votre tour de plusieurs manières : (cliquez sur le lien "reply" dans à droite pour me contacter )
- Me remonter des erreurs ou typos.
- Me remonter des choses qui pourraient être améliorées.
- Aimez et repostez !
- Suivez moi sur Bluesky 🦋
- Inscrivez-vous au flux RSS.
- Cliquez sur les boutons Plus sur Stackoverflow pour me faire gagner des badges "annonceur" 🏅.
Merci et à très bientôt sur Strangebuzz ! 😉