DEPLOY-NOW.md: Guide complet de déploiement en 3 commandes Contenu: - 🎯 Commandes de déploiement (build + up) - 📋 Ce qui va se passer au démarrage - 🔍 Vérifications post-migration - ✅ Checklist complète - 🆘 Dépannage si problème - 📊 Création de backups PostgreSQL - ✨ Avantages de PostgreSQL L'utilisateur peut maintenant déployer en 1 ligne: docker-compose build && docker-compose up -d La migration SQLite → PostgreSQL se fait automatiquement au premier démarrage si data/notes.db existe.
7.1 KiB
🚀 DÉPLOIEMENT IMMÉDIAT - PostgreSQL Uniquement
✅ Ce qui a été fait
NoteFlow a été complètement migré vers PostgreSQL. Plus besoin de SQLite.
Changements appliqués:
- ✅ Base de données: PostgreSQL uniquement (
config/database.js) - ✅ Migration automatique: Au démarrage si SQLite détecté
- ✅ Toutes les routes: Mises à jour pour PostgreSQL
- ✅ Docker-entrypoint: Attend PostgreSQL et migre automatiquement
- ✅ Documentation: Guide complet créé (
POSTGRESQL-ONLY.md)
🎯 DÉPLOIEMENT EN 3 COMMANDES
# 1. Reconstruire l'image avec PostgreSQL uniquement
docker-compose build
# 2. Démarrer les containers
docker-compose up -d
# 3. Suivre les logs pour voir la migration
docker-compose logs -f notes-app
C'est tout! 🎉
📋 Ce qui va se passer
Au démarrage du container:
🚀 Démarrage de NoteFlow avec PostgreSQL
========================================
⏳ Attente de PostgreSQL...
✅ PostgreSQL est prêt
🔍 Vérification des données...
⚠️ PostgreSQL est vide
📦 Base SQLite détectée: /app/data-sqlite/notes.db
🔄 Lancement de la migration automatique...
==================== MIGRATION SQLite → PostgreSQL ====================
📋 Migration table: users
✓ Table "users": 1/1 lignes migrées
📋 Migration table: notes
✓ Table "notes": X/X lignes migrées
📋 Migration table: global_todos
✓ Table "global_todos": X/X lignes migrées
📋 Migration table: rss_feeds
✓ Table "rss_feeds": X/X lignes migrées
📋 Migration table: rss_articles
✓ Table "rss_articles": X/X lignes migrées
...
========================================================
✅ Migration terminée!
Total: XXX lignes migrées
========================================================
✅ Migration réussie!
========================================
🚀 Démarrage du serveur NoteFlow...
Base de données connectée: postgresql://noteflow:***@postgres:5499/noteflow
✓ Tables de base de données créées avec succès
...
Durée estimée: 30 secondes à 2 minutes selon la quantité de données
🔍 Vérification après déploiement
1. Vérifier que l'application est accessible
curl http://localhost:2222/health
Attendu: {"status":"ok","timestamp":"...","uptime":...}
2. Vérifier les données dans PostgreSQL
docker exec noteflow-postgres psql -U noteflow -d noteflow -p 5499 -c "
SELECT 'notes' as table_name, COUNT(*) as count FROM notes
UNION ALL
SELECT 'rss_articles', COUNT(*) FROM rss_articles
UNION ALL
SELECT 'global_todos', COUNT(*) FROM global_todos;
"
3. Connexion à l'interface web
Ouvrez: http://localhost:2222
Connectez-vous avec: admin / admin
⚠️ IMPORTANT: Changez immédiatement le mot de passe admin!
📊 Vérifications complètes
✅ Checklist post-migration:
- Application accessible sur http://localhost:2222
- Connexion avec admin/admin fonctionne
- Notes affichées (vérifier le nombre)
- Tâches visibles dans la sidebar
- Flux RSS configurés (Admin > Flux RSS)
- Articles RSS affichés
- Calendrier fonctionne (si configuré)
- Paramètres présents (Admin > Paramètres)
✅ Vérification technique:
# Nombre de tables PostgreSQL
docker exec noteflow-postgres psql -U noteflow -d noteflow -p 5499 -c "
SELECT COUNT(*) FROM information_schema.tables WHERE table_schema = 'public';
"
# Attendu: 13 tables
# Taille de la base
docker exec noteflow-postgres psql -U noteflow -d noteflow -p 5499 -c "
SELECT pg_size_pretty(pg_database_size('noteflow'));
"
🎉 Après la migration réussie
Votre ancienne base SQLite
Elle est conservée automatiquement dans ./data/notes.db
Ne la supprimez PAS tant que vous n'avez pas:
- ✅ Vérifié que tout fonctionne avec PostgreSQL
- ✅ Utilisé l'application pendant quelques jours
- ✅ Fait un backup PostgreSQL
Créer un backup PostgreSQL
# Backup complet
docker exec noteflow-postgres pg_dump -U noteflow -d noteflow -p 5499 > backup-noteflow-$(date +%Y%m%d).sql
# Backup compressé
docker exec noteflow-postgres pg_dump -U noteflow -d noteflow -p 5499 | gzip > backup-noteflow-$(date +%Y%m%d).sql.gz
Programmer des backups automatiques
Ajoutez à votre crontab:
# Backup quotidien à 3h du matin
0 3 * * * cd /chemin/vers/noteflow && docker exec noteflow-postgres pg_dump -U noteflow -d noteflow -p 5499 | gzip > backups/noteflow-$(date +\%Y\%m\%d).sql.gz && find backups/ -name "noteflow-*.sql.gz" -mtime +30 -delete
🆘 En cas de problème
PostgreSQL ne démarre pas
# Voir les logs PostgreSQL
docker-compose logs postgres
# Vérifier le container
docker-compose ps postgres
# Redémarrer PostgreSQL seul
docker-compose restart postgres
Migration échoue
# Voir les logs détaillés
docker-compose logs notes-app | grep -A 50 "migration"
# Relancer la migration manuellement
docker exec -e SQLITE_PATH=/app/data-sqlite/notes.db \
notes-todo-app node scripts/migrate-sqlite-to-postgres.js
Application ne démarre pas
# Voir les logs complets
docker-compose logs notes-app
# Vérifier les variables d'environnement
docker exec notes-todo-app env | grep DATABASE
# Rebuild complet
docker-compose down
docker-compose build --no-cache
docker-compose up -d
Données manquantes après migration
Vos données SQLite sont toujours là! ./data/notes.db
Pour revenir temporairement à SQLite (debug):
# 1. Arrêter les containers
docker-compose down
# 2. Modifier temporairement config/database.js
cp config/database-sqlite-backup.js config/database.js
# 3. Rebuild et restart
docker-compose build notes-app
docker-compose up -d
Puis re-migrez proprement une fois le problème identifié.
📚 Documentation complète
POSTGRESQL-ONLY.md- Guide complet PostgreSQLMIGRATION-STEPS.md- Détails techniques migrationRECUPERATION-DONNEES.md- En cas de perte apparente de données
🎯 Résumé en 1 ligne
docker-compose build && docker-compose up -d && docker-compose logs -f notes-app
Attendez que la migration se termine, puis accédez à http://localhost:2222 🚀
Date: 2025-11-14
Commit: 6b5f408 - BREAKING: Migration complète vers PostgreSQL uniquement
Branch: claude/update-rss-feeds-011CV6EZDsWAUqbRHZR1117Q
✨ Avantages de PostgreSQL
Vous bénéficiez maintenant de:
- ✅ Performance: Meilleure gestion des requêtes complexes
- ✅ Concurrence: Support multi-utilisateurs optimisé
- ✅ Fiabilité: Transactions ACID complètes
- ✅ Évolutivité: Prêt pour la production
- ✅ Fonctionnalités: Full-text search, JSON, etc.
- ✅ Monitoring: Outils PostgreSQL standard
- ✅ Backup: Solutions professionnelles disponibles
Bienvenue dans le monde PostgreSQL! 🐘