diff --git a/06 - Teaching/Exercises 923.md b/06 - Teaching/Exercises 923.md index 0e4467b..5cf315d 100644 --- a/06 - Teaching/Exercises 923.md +++ b/06 - Teaching/Exercises 923.md @@ -41,7 +41,7 @@ Quel(s) fichier(s) éditez vous ? ### Exercice 3 -Afin d'éviter de polluer la base de donnée de production avec les tests, vous avez décidé de créer un nouveau container pour la base de donnée. Ce container doit être similaire en tout point à la production avec les exceptions suivantes: +Afin d'éviter de polluer la base de donnée de production avec les tests, vous avez décidé de créer un nouveau container pour la base de donnée. Ce container doit être similaire en tout point à la production avec les conditions suivantes: - Cette nouvelle base de donnée ne doit en aucun cas interférer avec la production. - Les données qui y sont stockées doivent être détruites entre chaque lancement de test pour assurer leur bon fonctionnement. - L'API de test s'y connecte via le port 9876. @@ -49,13 +49,37 @@ Afin d'éviter de polluer la base de donnée de production avec les tests, vous Sachant que: - Il s'agit d'une base de donnée Postgres. - Les containers sont détruits et recréés entre chaque test. +- Le container de production est décrit de la manière suivante: +```yaml +services: +  prod-db: +    image: postgres:16 +    ports: +      - 5432:5432 +    environment: +      - POSTGRES_USER=postgres +      - POSTGRES_PASSWORD=verysecurepassword +      - POSTGRES_DB=yougotthis +    volumes: +      - prod-db-data:/var/lib/postgresql/data -Quelle combinaison d'action permet de remplir ces conditions ? +volumes: +  prod-db-data: +``` + +Vous décidez de dupliquer la configuration ci-dessus pour créer le nouveau container de la base de donnée de test que vous appellez `test-db`. + +Quelles étapes devez-vous effectuer pour que le nouveau container respecte les conditions ci-dessus ? + +- [ ] Vous changez la version de l'image pour `postgres:latest` +- [ ] Vous changez le port mapping pour `9876:9876` +- [ ] Vous changez le port mapping pour `9876:5432` +- [ ] Vous changez les variables d'environnement +- [ ] Vous supprimez les variables d'environnement +- [ ] Vous changez le volume mapping du container pour `./src/:/var/lib/postgresql/data` +- [ ] Vous changez le volume mapping du container pour `test-db-data:/var/lib/postgresql/data` et ajoutez `test-db-data` dans la définition des volumes en bas du fichier +- [ ] Vous supprimez le volume mapping du container +- [ ] Vous supprimer la définition du volume `prod-db-data` en bas du fichier + +### Exercice 4 -- [ ] Changer la version de l'image du container Postgres pour `postgres:latest` -- [ ] Changer le port mapping du container Postgres en `9876:9876` -- [ ] Changer le port mapping du container Postgres en `9876:5432` -- [ ] Changer le volume utilisé par le container Postgres pour `./src/:/var/lib/postgresql/data` -- [ ] Supprimer le volume utilisé par le container Postgres -- [ ] Changer les variables d'environnement du container Postgres -- [ ] Supprimer les variables d'environnement \ No newline at end of file