Files
Regisflow/PRODUCTION.md
T
michaelschal 9cc28ddc93 Prepare the application for deployment to a production environment
Adds Docker Compose configuration, Nginx setup, and deployment scripts.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: dec54137-d5a2-4406-8ad4-5f2f9fb110bf
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/0715008c-7244-40f4-befc-26c014852236/1668b635-4205-40d7-8634-6b7174d94d7b.jpg
2025-07-11 15:59:15 +00:00

3.8 KiB

Guide de Mise en Production RegisFlow

Configuration rapide pour production

1. Télécharger et préparer

# Créer le dossier de production
mkdir /opt/regisflow && cd /opt/regisflow

# Télécharger les fichiers nécessaires
curl -O https://raw.githubusercontent.com/votre-repo/regisflow/main/docker-compose.yml
curl -O https://raw.githubusercontent.com/votre-repo/regisflow/main/Dockerfile
curl -O https://raw.githubusercontent.com/votre-repo/regisflow/main/docker-entrypoint-simple.sh

2. Configuration environnement

Créer le fichier .env :

# === OBLIGATOIRE - À MODIFIER ===
POSTGRES_PASSWORD=VotreMotDePasseSuperSecurise123!
SESSION_SECRET=VotreCleSessionTresLongueEtSecurisee456789ABCDEF

# === APPLICATION ===
NODE_ENV=production
PORT=5000
TZ=Europe/Paris

# === SÉCURITÉ ===
SECURE_COOKIES=true
DATA_RETENTION_MONTHS=19

# === SAUVEGARDES ===
BACKUP_RETENTION_DAYS=90
MAX_BACKUP_COUNT=20

3. Déploiement immédiat

# Démarrer l'application
docker-compose up -d --build

# Vérifier le fonctionnement
curl http://localhost:5000/health

# Voir les logs
docker-compose logs -f regisflow

4. Accès initial

5. Nginx reverse proxy (recommandé)

Ajouter à votre configuration Nginx :

server {
    listen 80;
    server_name votre-domaine.com;
    
    client_max_body_size 10M;  # Pour les photos
    
    location / {
        proxy_pass http://localhost:5000;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_connect_timeout 60s;
        proxy_send_timeout 60s;
        proxy_read_timeout 60s;
    }
}

6. Maintenance courante

# Voir l'état des services
docker-compose ps

# Redémarrer l'application
docker-compose restart regisflow

# Mise à jour
docker-compose down
docker-compose up -d --build --force-recreate

# Sauvegardes manuelles
docker-compose exec regisflow node -e "require('./dist/backup-scheduler.js').createAutomaticBackup()"

# Accès aux données
docker-compose exec regisflow-db psql -U regisflow -d regisflow

7. Monitoring et logs

# Logs en temps réel
docker-compose logs -f

# Utilisation des ressources
docker stats regisflow-app regisflow-db

# Espace disque des volumes
docker system df

Fonctionnalités automatiques en production

✅ Sauvegardes automatiques : Toutes les 12h (00:00 et 12:00)
✅ Purge des données : Automatique après 19 mois (1er de chaque mois)
✅ Health checks : Surveillance continue des services
✅ Gestion des sessions : Sessions PostgreSQL sécurisées
✅ Optimisation mémoire : Configuration pour serveurs de production

Sécurité production

  • Modifier POSTGRES_PASSWORD et SESSION_SECRET
  • Configurer firewall (ports 80, 443, 22 uniquement)
  • Activer HTTPS avec certificats SSL
  • Sauvegardes régulières vers stockage externe
  • Monitoring des logs d'erreurs
  • Changer le mot de passe admin par défaut

Support et dépannage

Problèmes courants :

  1. Application inaccessible : Vérifier docker-compose ps et les logs
  2. Erreur base de données : Vérifier que PostgreSQL est démarré
  3. Photos ne se sauvegardent pas : Vérifier les permissions du volume
  4. Performance lente : Augmenter les limites mémoire Docker

Commandes de diagnostic :

# État complet du système
docker-compose ps && docker-compose logs --tail=50
docker system df && df -h

# Test complet de l'application
curl -v http://localhost:5000/health
curl -v http://localhost:5000/api/auth/default-credentials-status