diff --git a/Dockerfile b/Dockerfile index aafafbe..7c3eba8 100644 --- a/Dockerfile +++ b/Dockerfile @@ -81,8 +81,9 @@ RUN npm ci --only=production && npm cache clean --force COPY --from=build --chown=nextjs:nodejs /app/dist ./dist COPY --from=build --chown=nextjs:nodejs /app/shared ./shared -# Copy migration scripts +# Copy migration scripts and files COPY --chown=nextjs:nodejs scripts/ ./scripts/ +COPY --chown=nextjs:nodejs migrations/ ./migrations/ # Create symlink for public files to be accessible from dist RUN ln -sf /app/dist/public /app/dist/public diff --git a/docker-compose.yml b/docker-compose.yml index 5624acd..523516d 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -13,6 +13,9 @@ services: SESSION_SECRET: LogiFlow_Super_Secret_Session_Key_2025_Production PORT: 3000 USE_LOCAL_AUTH: "true" + POSTGRES_USER: logiflow_admin + POSTGRES_PASSWORD: LogiFlow2025! + POSTGRES_DB: logiflow_db ports: - "3000:3000" networks: diff --git a/scripts/auto-migrate-production.sh b/scripts/auto-migrate-production.sh old mode 100644 new mode 100755 index e7dd86c..24b4995 --- a/scripts/auto-migrate-production.sh +++ b/scripts/auto-migrate-production.sh @@ -1,12 +1,24 @@ #!/bin/bash -# Script de migration automatique - Crée UNIQUEMENT la table announcements -# Toutes les autres tables existent déjà en production +# Script de migration automatique - Production +# Crée la table announcements et ajoute les champs DLC stock épuisé set -e -echo "🔄 [AUTO-MIGRATE] Vérification de la table announcements..." +echo "🔄 [AUTO-MIGRATE] Début des migrations automatiques..." + +# Construire DATABASE_URL si nécessaire +if [ -z "$DATABASE_URL" ]; then + if [ -n "$POSTGRES_USER" ] && [ -n "$POSTGRES_PASSWORD" ] && [ -n "$POSTGRES_DB" ]; then + export DATABASE_URL="postgresql://${POSTGRES_USER}:${POSTGRES_PASSWORD}@logiflow-db:5432/${POSTGRES_DB}" + echo "🔧 [AUTO-MIGRATE] URL de base de données construite" + else + echo "❌ [AUTO-MIGRATE] Variables de base de données manquantes" + exit 1 + fi +fi # Vérifier si la base de données est accessible +echo "🔗 [AUTO-MIGRATE] Test de connexion à la base de données..." if ! psql "$DATABASE_URL" -c "SELECT 1;" > /dev/null 2>&1; then echo "❌ [AUTO-MIGRATE] Impossible de se connecter à la base de données" exit 1