# FAQ

# 1. Quels sont les prérequis pour installer le CRM ?

  • Un serveur VPS Linux (Ubuntu/Debian recommandé).
  • Docker et Docker Compose installés.
  • Un nom de domaine configuré pour pointer vers le VPS (pour utiliser Docker Proxy Manager).
  • Une base de données PostgreSQL accessible.
  • Accès au dépôt GitLab contenant la stack Docker.

# 2. Comment vérifier si Docker et Docker Compose sont bien installés ?

# Vérification de Docker
docker --version

# Vérification de Docker Compose
docker-compose --version

# 3. Pourquoi l'API n'est-elle pas accessible via le nom de domaine ?

  • Vérifiez que le domaine pointe vers l'adresse IP publique du VPS.
  • Vérifiez la configuration du proxy dans Docker Proxy Manager (nom de domaine, port, SSL).
  • Assurez-vous que les ports 80 et 443 sont ouverts.

# 4. Comment sauvegarder les données PostgreSQL ?

pg_dump -h <IP_VPS> -U crm_user -d crm_db > /backup/postgres_backup.sql

# 5. Que faire si un conteneur ne démarre pas ?

# Vérification des journaux du conteneur
docker logs <nom_du_conteneur>

# Redémarrage du conteneur
docker restart <nom_du_conteneur>

# 6. Comment mettre à jour la stack Docker ?

# Mise à jour depuis GitLab
git pull origin main

# Relance des conteneurs
docker-compose up -d

# 7. Comment configurer un certificat SSL avec Docker Proxy Manager ?

  1. Accédez à l’interface Docker Proxy Manager (http://<IP_VPS>:81).
  2. Ajoutez un nouvel hôte proxy avec le nom de domaine configuré.
  3. Dans l’onglet SSL, sélectionnez "Request a new SSL Certificate".
  4. Acceptez les termes de Let's Encrypt et enregistrez la configuration.

# 8. Quels ports doivent être ouverts sur le VPS ?

  • 80/443 : Pour Docker Proxy Manager et le trafic HTTP/HTTPS.
  • 9883 : Pour l’API backend Django.
  • 9200 : Pour Elasticsearch.
  • 8801 : Pour AirNotifier.
  • 5432 : Pour PostgreSQL.

# 9. Comment vérifier si l'API communique correctement avec PostgreSQL ?

# Connexion au conteneur Django
docker exec -it <nom_du_conteneur_django> bash

# Test de la connectivité avec la base de données
python manage.py dbshell

# 10. L'API SMS ne fonctionne pas, comment résoudre ce problème ?

  • Assurez-vous que les credentials et l’URL de l’API SMS sont bien déclarés dans le fichier .env :
SMS_API_URL=https://api.smsprovider.com/send
SMS_API_KEY=<votre-cle>
  • Vérifiez la connectivité avec l’API SMS :
curl -X POST -H "Authorization: Bearer <votre-cle>" -d '{"message": "Test"}' https://api.smsprovider.com/send

# 11. Comment ajouter un nouveau service au stack Docker ?

# Modifier le fichier docker-compose.yml
nano docker-compose.yml

# Ajout de la configuration du service

# Relancer la stack Docker
docker-compose up -d

# 12. Que faire en cas de problème avec Docker Proxy Manager ?

  • Vérifiez les journaux du conteneur Docker Proxy Manager :
docker logs <nom_du_conteneur_proxy_manager>
  • Assurez-vous que le certificat SSL est valide.
  • Redémarrez Docker Proxy Manager :
docker restart <nom_du_conteneur_proxy_manager>