setup_mariadb.sh 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. #!/bin/bash
  2. # Script pour configurer MariaDB sur le conteneur Docker
  3. set -e
  4. echo "=========================================="
  5. echo "Configuration de MariaDB pour blog-duhaz"
  6. echo "=========================================="
  7. echo
  8. # Vérifier que le conteneur existe
  9. if ! docker ps -a | grep -q mariadb; then
  10. echo "❌ Erreur: Le conteneur 'mariadb' n'existe pas"
  11. echo " Vérifiez que le conteneur Docker MariaDB est bien créé"
  12. exit 1
  13. fi
  14. # Vérifier que le conteneur tourne
  15. if ! docker ps | grep -q mariadb; then
  16. echo "⚠️ Le conteneur MariaDB n'est pas démarré"
  17. echo " Tentative de démarrage..."
  18. docker start mariadb
  19. sleep 5
  20. fi
  21. echo "📦 Conteneur MariaDB détecté et actif"
  22. echo
  23. # Demander le mot de passe root
  24. read -sp "Entrez le mot de passe root de MariaDB: " ROOT_PASSWORD
  25. echo
  26. echo
  27. # Demander le mot de passe pour l'utilisateur duhaz_user
  28. read -sp "Entrez le mot de passe pour l'utilisateur duhaz_user: " USER_PASSWORD
  29. echo
  30. echo
  31. # Créer la base de données et l'utilisateur
  32. echo "🔧 Configuration de la base de données..."
  33. docker exec -i mariadb mysql -u root -p"$ROOT_PASSWORD" << EOF
  34. -- Créer la base de données
  35. CREATE DATABASE IF NOT EXISTS duhaz_blog CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
  36. -- Créer l'utilisateur
  37. CREATE USER IF NOT EXISTS 'duhaz_user'@'%' IDENTIFIED BY '$USER_PASSWORD';
  38. -- Donner les privilèges
  39. GRANT ALL PRIVILEGES ON duhaz_blog.* TO 'duhaz_user'@'%';
  40. FLUSH PRIVILEGES;
  41. -- Vérification
  42. SHOW DATABASES LIKE 'duhaz_blog';
  43. SELECT User, Host FROM mysql.user WHERE User = 'duhaz_user';
  44. EOF
  45. if [ $? -eq 0 ]; then
  46. echo
  47. echo "✅ Configuration terminée avec succès!"
  48. echo
  49. echo "📋 Informations de connexion:"
  50. echo " Base de données: duhaz_blog"
  51. echo " Utilisateur: duhaz_user"
  52. echo " Mot de passe: $USER_PASSWORD"
  53. echo " Hôte: mariadb (ou l'IP du Raspberry Pi)"
  54. echo " Port: 3306"
  55. echo
  56. echo "💡 Mettez à jour votre fichier .env avec ces informations"
  57. else
  58. echo
  59. echo "❌ Erreur lors de la configuration"
  60. exit 1
  61. fi