ProjetVM/entrypoint.sh
2025-12-08 14:18:02 +01:00

49 lines
1.1 KiB
Bash

#!/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