# Configuration Docker Compose ## Liens utiles - Lien meme de test : https://ichef.bbci.co.uk/ace/standard/976/cpsprodpb/16620/production/_91408619_55df76d5-2245-41c1-8031-07a4da3f313f.jpg - Lien URL serveur : http://localhost/index.html ## Quels services doivent communiquer entre eux ? - Le frontend doit communiquer avec le backend pour récupérer et envoyer les données des mèmes - Le backend doit communiquer avec MongoDB pour stocker et récupérer les données - Le frontend n'a pas besoin de communiquer directement avec MongoDB (isolation de sécurité) ## Quels ports doivent être exposés ? - Port 80 : exposé par le frontend pour l'accès web public - Port 8000 : exposé par le backend pour le développement et le débogage (optionnel en production) - Le port de MongoDB (27017) ne doit pas être exposé à l'extérieur pour des raisons de sécurité ## Comment assurer la persistance des données ? - Utiliser un volume Docker nommé (`mongo-data`) attaché au service MongoDB - Configurer ce volume avec `driver: local` pour un stockage sur la machine hôte - Conserver ce volume lors des redémarrages avec `docker-compose down` sans l'option `-v` ## Dans quel ordre les services doivent-ils démarrer ? 1. MongoDB doit démarrer en premier (base de données) 2. Le backend doit démarrer après MongoDB (pour pouvoir s'y connecter) 3. Le frontend doit démarrer après le backend (pour pouvoir accéder à l'API)