25 lines
1.4 KiB
Markdown
25 lines
1.4 KiB
Markdown
![]() |
# 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)
|