#!/bin/sh echo "Attente de la disponibilité de MariaDB..." # Fonction pour vérifier si MariaDB est prêt wait_for_db() { max_attempts=30 attempt=0 while [ $attempt -lt $max_attempts ]; do # Tester la connexion à MariaDB if python3 -c " import mysql.connector import sys try: conn = mysql.connector.connect( host='mariadb', user='root', password='un-bon-mdp-solide', connection_timeout=5 ) conn.close() sys.exit(0) except Exception as e: sys.exit(1) " 2>/dev/null; then echo "✓ MariaDB est prêt !" return 0 fi attempt=$((attempt + 1)) echo "Tentative $attempt/$max_attempts - MariaDB n'est pas encore prêt, attente..." sleep 2 done echo "✗ Erreur: MariaDB n'est pas disponible après $max_attempts tentatives" return 1 } # Attendre que MariaDB soit disponible if wait_for_db; then chmod +x init_db.sh chmod +x run.sh sh init_db.sh exec "$@" else echo "Impossible de se connecter à la base de données. Arrêt." exit 1 fi