initial commit - LeDiscord plateforme des copains

This commit is contained in:
EvanChal
2025-08-21 00:28:21 +02:00
commit b7a84a53aa
93 changed files with 16247 additions and 0 deletions

109
setup.sh Executable file
View File

@@ -0,0 +1,109 @@
#!/bin/bash
# ===========================================
# LeDiscord - Script de setup automatique
# ===========================================
set -e # Arrêter en cas d'erreur
echo "🚀 Démarrage du setup de LeDiscord..."
# Vérifier que Docker est installé
if ! command -v docker &> /dev/null; then
echo "❌ Docker n'est pas installé. Veuillez l'installer d'abord."
exit 1
fi
if ! command -v docker-compose &> /dev/null; then
echo "❌ Docker Compose n'est pas installé. Veuillez l'installer d'abord."
exit 1
fi
echo "✅ Docker et Docker Compose sont installés"
# Vérifier que les ports sont disponibles
check_port() {
local port=$1
if lsof -Pi :$port -sTCP:LISTEN -t >/dev/null ; then
echo "❌ Le port $port est déjà utilisé. Veuillez le libérer."
exit 1
fi
}
echo "🔍 Vérification des ports..."
check_port 8000
check_port 5173
check_port 5432
echo "✅ Tous les ports sont disponibles"
# Créer le fichier .env s'il n'existe pas
if [ ! -f .env ]; then
echo "📝 Création du fichier .env..."
if [ -f env.example ]; then
cp env.example .env
echo "⚠️ Fichier .env créé à partir de env.example"
echo "⚠️ IMPORTANT: Modifiez le fichier .env avec vos valeurs avant de continuer"
echo "⚠️ Appuyez sur Entrée quand vous avez terminé..."
read
else
echo "❌ Fichier env.example non trouvé. Créez manuellement votre fichier .env"
exit 1
fi
else
echo "✅ Fichier .env existe déjà"
fi
# Créer le dossier uploads s'il n'existe pas
if [ ! -d uploads ]; then
echo "📁 Création du dossier uploads..."
mkdir -p uploads
touch uploads/.gitkeep
fi
# Construire et démarrer les services
echo "🔨 Construction des images Docker..."
docker-compose build
echo "🚀 Démarrage des services..."
docker-compose up -d
# Attendre que les services soient prêts
echo "⏳ Attente que les services soient prêts..."
sleep 30
# Vérifier que les services fonctionnent
echo "🔍 Vérification des services..."
if curl -s http://localhost:8000/health > /dev/null; then
echo "✅ Backend accessible sur http://localhost:8000"
else
echo "❌ Backend non accessible"
fi
if curl -s http://localhost:5173 > /dev/null; then
echo "✅ Frontend accessible sur http://localhost:5173"
else
echo "❌ Frontend non accessible"
fi
echo ""
echo "🎉 Setup terminé avec succès !"
echo ""
echo "📱 Accès à l'application :"
echo " Frontend: http://localhost:5173"
echo " API Docs: http://localhost:8000/docs"
echo ""
echo "🔑 Compte admin par défaut :"
echo " Email: admin@lediscord.com"
echo " Mot de passe: Celui défini dans votre fichier .env"
echo ""
echo "📚 Commandes utiles :"
echo " make start - Démarrer l'application"
echo " make stop - Arrêter l'application"
echo " make logs - Voir les logs"
echo " make help - Afficher l'aide"
echo ""
echo "⚠️ N'oubliez pas de :"
echo " 1. Changer le mot de passe admin par défaut"
echo " 2. Configurer une clé JWT_SECRET_KEY sécurisée"
echo " 3. Configurer l'email si nécessaire"