mirror of
https://github.com/R0m1k3/LogiFlow.git
synced 2026-10-11 17:27:31 +02:00
Replit-Commit-Author: Agent Replit-Commit-Session-Id: e437ffed-c31b-44eb-9fd5-b6f9faa8e7ce Replit-Commit-Checkpoint-Type: full_checkpoint Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/1957c339-2757-4d1f-8e92-e9f71a1ce58e/e437ffed-c31b-44eb-9fd5-b6f9faa8e7ce/biGr9ER
108 lines
3.0 KiB
Markdown
108 lines
3.0 KiB
Markdown
# 🚀 Instructions de Déploiement avec Migration Automatique
|
|
|
|
## Vue d'ensemble
|
|
Le système est maintenant configuré pour exécuter automatiquement les migrations de base de données lors de chaque mise à jour Docker, garantissant que toutes les tables nécessaires sont créées.
|
|
|
|
## 🔧 Configuration Automatique
|
|
|
|
### Scripts créés
|
|
1. **`scripts/auto-migrate-production.sh`** - Migration automatique au démarrage
|
|
2. **`scripts/docker-entrypoint.sh`** - Point d'entrée avec migration
|
|
3. **`scripts/manual-migrate.sh`** - Migration manuelle si nécessaire
|
|
|
|
### Dockerfile modifié
|
|
- Copie automatique des scripts de migration
|
|
- Point d'entrée personnalisé avec migration
|
|
- Permissions configurées automatiquement
|
|
|
|
## 🚀 Déploiement
|
|
|
|
### Option 1: Reconstruction complète (Recommandée)
|
|
```bash
|
|
# Arrêter le conteneur actuel
|
|
docker-compose down
|
|
|
|
# Reconstruire avec les nouveaux scripts
|
|
docker-compose up --build -d
|
|
|
|
# Vérifier les logs de migration
|
|
docker-compose logs -f
|
|
```
|
|
|
|
### Option 2: Mise à jour sans reconstruction
|
|
```bash
|
|
# Copier les scripts dans le conteneur existant
|
|
docker cp scripts/ logiflow-logiflow-1:/app/
|
|
|
|
# Exécuter la migration manuellement
|
|
docker exec logiflow-logiflow-1 chmod +x /app/scripts/auto-migrate-production.sh
|
|
docker exec logiflow-logiflow-1 /app/scripts/auto-migrate-production.sh
|
|
|
|
# Redémarrer l'application
|
|
docker-compose restart
|
|
```
|
|
|
|
## 🔍 Vérification
|
|
|
|
### Logs de migration
|
|
```bash
|
|
# Voir les logs de migration au démarrage
|
|
docker-compose logs | grep "AUTO-MIGRATE"
|
|
```
|
|
|
|
### État des tables
|
|
```bash
|
|
# Vérifier que toutes les tables existent
|
|
docker exec logiflow-logiflow-1 psql $DATABASE_URL -c "
|
|
SELECT tablename
|
|
FROM pg_tables
|
|
WHERE schemaname = 'public'
|
|
ORDER BY tablename;
|
|
"
|
|
```
|
|
|
|
### Test du système d'annonces
|
|
```bash
|
|
# Vérifier la table announcements spécifiquement
|
|
docker exec logiflow-logiflow-1 psql $DATABASE_URL -c "
|
|
SELECT 'announcements' as table_name, count(*) as columns
|
|
FROM information_schema.columns
|
|
WHERE table_name = 'announcements';
|
|
"
|
|
```
|
|
|
|
## 🛠️ Dépannage
|
|
|
|
### Migration manuelle forcée
|
|
```bash
|
|
# Si la migration automatique échoue
|
|
docker exec logiflow-logiflow-1 /app/scripts/manual-migrate.sh
|
|
```
|
|
|
|
### Vérification des permissions
|
|
```bash
|
|
# Vérifier que les scripts sont exécutables
|
|
docker exec logiflow-logiflow-1 ls -la /app/scripts/
|
|
```
|
|
|
|
### Logs détaillés
|
|
```bash
|
|
# Activer le debug des migrations
|
|
docker-compose up -d --env DEBUG_MIGRATIONS=true
|
|
```
|
|
|
|
## 📋 Table créée automatiquement
|
|
|
|
✅ **announcements** - Système d'informations
|
|
|
|
Le script vérifie et crée **UNIQUEMENT** la table `announcements` si elle n'existe pas. Toutes les autres tables existent déjà en production et ne sont pas touchées.
|
|
|
|
## 🔄 Futures mises à jour
|
|
|
|
Désormais, chaque fois que vous mettez à jour votre application Docker :
|
|
1. Le conteneur démarre
|
|
2. La migration automatique s'exécute
|
|
3. Toutes les nouvelles tables sont créées
|
|
4. L'application démarre normalement
|
|
|
|
**Plus besoin d'intervention manuelle !** |