Files
Regisflow/README_DOCKER.md
T
michaelschal a155425537 Simplify deployment by removing the reverse proxy configuration
Removes Nginx configuration, updates Docker Compose, README, and .env.example to streamline deployment and access the application directly on port 5000.

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
2025-07-09 20:16:37 +00:00

5.6 KiB

RegisFlow - Déploiement Docker

Ce guide vous explique comment déployer RegisFlow avec Docker et Docker Compose.

🐳 Prérequis

  • Docker Engine 20.10 ou supérieur
  • Docker Compose 2.0 ou supérieur
  • Au minimum 1 GB de RAM libre
  • Au minimum 2 GB d'espace disque libre

🚀 Démarrage Rapide

1. Préparer l'environnement

# Cloner le projet
git clone <votre-repo>
cd regisflow

# Copier et configurer le fichier d'environnement
cp .env.example .env

# Éditer le fichier .env avec vos paramètres
nano .env

2. Configurer les variables d'environnement

Éditez le fichier .env :

# Configuration de la base de données
DATABASE_URL=postgresql://regisflow:votre_mot_de_passe@postgres:5432/regisflow
POSTGRES_PASSWORD=votre_mot_de_passe_securise

# Configuration de l'application
NODE_ENV=production
PORT=5000

# Clé secrète pour les sessions (OBLIGATOIRE EN PRODUCTION)
SESSION_SECRET=votre-cle-secrete-super-longue-et-complexe

# Configuration du timezone
TZ=Europe/Paris

3. Lancer l'application

# Construire et démarrer tous les services
docker-compose up -d

# Vérifier les logs
docker-compose logs -f

# Accéder à l'application
# http://localhost:5000

📋 Services Inclus

1. PostgreSQL (Base de données)

  • Port: 5432
  • Database: regisflow
  • Utilisateur: regisflow
  • Données persistantes: Volume postgres_data

2. RegisFlow (Application)

  • Port: 5000
  • Dépendances: PostgreSQL
  • Sauvegardes: Volume backup_data
  • Health check: /health

🔧 Commandes Utiles

Gestion des services

# Démarrer les services
docker-compose up -d

# Arrêter les services
docker-compose down

# Redémarrer un service
docker-compose restart regisflow

# Voir les logs
docker-compose logs -f regisflow

# Voir le statut des services
docker-compose ps

Gestion des données

# Sauvegarder la base de données
docker-compose exec postgres pg_dump -U regisflow regisflow > backup.sql

# Restaurer la base de données
docker-compose exec -T postgres psql -U regisflow regisflow < backup.sql

# Accéder à la base de données
docker-compose exec postgres psql -U regisflow regisflow

Maintenance

# Mettre à jour l'application
docker-compose pull
docker-compose up -d --build

# Nettoyer les images inutilisées
docker system prune -f

# Voir l'utilisation des volumes
docker volume ls
docker volume inspect regisflow_postgres_data

🛡️ Sécurité

Configuration de production

  1. Changez les mots de passe par défaut :

    • POSTGRES_PASSWORD
    • SESSION_SECRET
  2. Configurez HTTPS :

    • Obtenez un certificat SSL
    • Modifiez nginx.conf pour le HTTPS
    • Activez secure: true pour les cookies
  3. Limitez l'accès réseau :

    • Utilisez un firewall
    • Limitez l'accès aux ports nécessaires

Sauvegarde automatique

L'application inclut un système de sauvegarde automatique :

  • Sauvegarde toutes les 12 heures
  • Conservation des 10 dernières sauvegardes
  • Stockage dans le volume backup_data

📊 Surveillance

Health Checks

# Vérifier la santé de l'application
curl http://localhost:5000/health

# Vérifier via Docker
docker-compose exec regisflow wget -qO- http://localhost:5000/health

Métriques

# Statistiques des conteneurs
docker stats

# Utilisation des volumes
docker system df

🔧 Dépannage

Problèmes courants

  1. L'application ne démarre pas :

    # Vérifier les logs
    docker-compose logs regisflow
    
    # Vérifier la base de données
    docker-compose logs postgres
    
  2. Erreur de connexion à la base :

    # Vérifier que PostgreSQL est démarré
    docker-compose ps postgres
    
    # Tester la connexion
    docker-compose exec postgres pg_isready -U regisflow
    
  3. Problème de permissions :

    # Vérifier les permissions des volumes
    docker-compose exec regisflow ls -la /app/backups
    

Réinitialisation complète

# Arrêter tous les services
docker-compose down

# Supprimer les volumes (ATTENTION: perte de données)
docker-compose down -v

# Nettoyer les images
docker system prune -af

# Redémarrer
docker-compose up -d

🔄 Mise à jour

Mise à jour de l'application

# Récupérer les dernières modifications
git pull origin main

# Reconstruire et redémarrer
docker-compose up -d --build

# Vérifier les logs
docker-compose logs -f regisflow

Migration de données

L'application gère automatiquement les migrations de base de données au démarrage.

📝 Configuration Avancée

Accès via Reverse Proxy (Optionnel)

Si vous souhaitez ajouter un reverse proxy (Nginx, Apache, etc.) :

  • Configurez le proxy pour pointer vers localhost:5000
  • Ajoutez la configuration SSL/TLS si nécessaire
  • Optimisez les performances selon vos besoins

Variables d'environnement complètes

# Base de données
DATABASE_URL=postgresql://regisflow:password@postgres:5432/regisflow
POSTGRES_PASSWORD=password

# Application
NODE_ENV=production
PORT=5000
SESSION_SECRET=your-secret-key

# Timezone
TZ=Europe/Paris

# Sauvegardes (optionnel)
BACKUP_RETENTION_DAYS=30
MAX_BACKUP_COUNT=10

# Logs (optionnel)
LOG_LEVEL=info

🆘 Support

En cas de problème :

  1. Vérifiez les logs : docker-compose logs
  2. Consultez la documentation
  3. Vérifiez les issues sur GitHub
  4. Contactez le support

📚 Liens Utiles