mirror of
https://github.com/R0m1k3/Regisflow.git
synced 2026-10-14 18:57:29 +02:00
Integrate internal database within Docker for simplified setup and deployment
Configures PostgreSQL to run inside Docker, streamlining deployment and simplifying database management using Drizzle ORM. Replit-Commit-Author: Agent Replit-Commit-Session-Id: 91318273-c764-4fd4-be04-bdc12c38af32 Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/0715008c-7244-40f4-befc-26c014852236/6e755801-08e8-4492-805e-ac3610de5a2a.jpg
This commit is contained in:
1 parent
e8977554e1
commit
a4c5301d74
7 files changed
+70
-71
No files matched your search
+10
-26
@@ -4,43 +4,27 @@ set -e
|
||||
# Script d'entrée pour le container RegisFlow
|
||||
echo "🚀 Démarrage de RegisFlow..."
|
||||
|
||||
# Attendre que la base de données externe soit prête
|
||||
echo "📡 Attente de la base de données externe..."
|
||||
# Attendre que la base de données Docker soit prête
|
||||
echo "📡 Attente de la base de données regisflow-db..."
|
||||
echo "🔍 Test de connexion à regisflow-db:5432..."
|
||||
|
||||
# Extraire l'hôte et le port depuis DATABASE_URL
|
||||
DB_HOST=$(echo $DATABASE_URL | sed -n 's|.*@\([^:]*\):.*|\1|p')
|
||||
DB_PORT=$(echo $DATABASE_URL | sed -n 's|.*:\([0-9]*\)/.*|\1|p')
|
||||
DB_USER=$(echo $DATABASE_URL | sed -n 's|.*://\([^:]*\):.*|\1|p')
|
||||
|
||||
if [ -z "$DB_HOST" ] || [ -z "$DB_PORT" ]; then
|
||||
echo "❌ Erreur: DATABASE_URL mal formatée"
|
||||
echo "Format attendu: postgresql://user:password@host:port/database"
|
||||
echo "DATABASE_URL actuelle: $DATABASE_URL"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
echo "🔍 Test de connexion à $DB_HOST:$DB_PORT..."
|
||||
|
||||
# Attendre jusqu'à 120 secondes pour PostgreSQL externe
|
||||
# Attendre jusqu'à 120 secondes pour PostgreSQL Docker
|
||||
RETRIES=24
|
||||
while [ $RETRIES -gt 0 ]; do
|
||||
if pg_isready -h "$DB_HOST" -p "$DB_PORT" -U "$DB_USER"; then
|
||||
echo "✅ PostgreSQL externe est prêt!"
|
||||
if pg_isready -h regisflow-db -p 5432 -U regisflow; then
|
||||
echo "✅ PostgreSQL regisflow-db est prêt!"
|
||||
break
|
||||
fi
|
||||
echo "⏳ Base de données externe non prête, tentative $((25-RETRIES))/24, attente de 5 secondes..."
|
||||
echo "⏳ Base de données non prête, tentative $((25-RETRIES))/24, attente de 5 secondes..."
|
||||
sleep 5
|
||||
RETRIES=$((RETRIES-1))
|
||||
done
|
||||
|
||||
if [ $RETRIES -eq 0 ]; then
|
||||
echo "❌ Timeout: Impossible de se connecter à PostgreSQL externe après 2 minutes"
|
||||
echo "❌ Timeout: Impossible de se connecter à regisflow-db après 2 minutes"
|
||||
echo "🔍 Diagnostic:"
|
||||
echo " - Host: $DB_HOST"
|
||||
echo " - Port: $DB_PORT"
|
||||
echo " - User: $DB_USER"
|
||||
echo " - Vérifiez que PostgreSQL est accessible depuis Docker"
|
||||
echo " - Vérifiez le firewall et les permissions réseau"
|
||||
echo " - Vérifiez que le service regisflow-db démarre correctement"
|
||||
echo " - Vérifiez les logs: docker-compose logs regisflow-db"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
|
||||
Reference in new issue
Block a user