Exercice : Mise sous Docker Compose
Dans la première partie de ce cours, nous avions démarré une base de donnée PostgreSQL dans un conteneur, sur un réseau spécifique. Pour rappel la commande était la suivante :
1
docker run -d --name pg-test -e POSTGRES_DB=prism -e POSTGRES_USER=snowden -e POSTGRES_PASSWORD=nsa -v /root/bdd:/var/lib/postgresql/data --net pg-net postgres
Question
À l'aide de cette commande et des connaissances acquises sur Docker Compose, écrivez un fichier Docker Compose qui permette de démarrer ce service. On considère que le réseau pg-net existe déjà sur l'hôte.
Solution
Voici un fichier docker-compose.yml qui définit un service bdd qui va démarrer le conteneur de la même manière que la commande ci-dessus :
1
version'3'
2
services
3
bdd
4
imagepostgres
5
container_namepg-test
6
environment
7
POSTGRES_DBprism
8
POSTGRES_USERsnowden
9
POSTGRES_PASSWORDnsa
10
volumes
11
/root/bdd:/var/lib/postgresql/data12
networks
13
pg-net14
15
networks
16
pg-net
17
externaltrue