Leçon 12 : Utilisation des Volumes pour la Persistance Gérée des Données
Les volumes sont la méthode recommandée par Docker pour gérer les données persistantes. Docker gère la création, le montage et la gestion du volume sur le système hôte.
1. Création d'un Volume
Tout d'abord, créez explicitement un volume nommé à l'aide de la CLI :
bash docker volume create pg_data
Listez vos volumes existants :
bash docker volume ls
2. Exécution d'un Conteneur avec un Volume
Nous mappons le volume nommé à un répertoire à l'intérieur du conteneur en utilisant le drapeau -v.
Exécutons une base de données PostgreSQL, qui s'attend à ce que ses données soient stockées dans /var/lib/postgresql/data.
bash docker run -d \n --name my_postgres \n -e POSTGRES_PASSWORD=secretpassword \n -v pg_data:/var/lib/postgresql/data \n postgres:15
Explication de -v :
-v pg_data: Le nom du volume Docker (côté hôte).:: Séparateur./var/lib/postgresql/data: Le chemin à l'intérieur du conteneur où PostgreSQL stocke ses données.
3. Test de Persistance des Données
-
Démarrez le conteneur (comme ci-dessus).
-
Arrêtez le conteneur : bash docker stop my_postgres
-
Supprimez le conteneur (mais pas le volume !) : bash docker rm my_postgres
-
Réexécutez le conteneur en utilisant le même nom de volume (
pg_data). La base de données chargera les données précédemment stockées, prouvant la persistance.
4. Nettoyage des Volumes
Les volumes consomment de l'espace disque et doivent être nettoyés manuellement lorsqu'ils ne sont plus nécessaires.
bash docker volume rm pg_data
Attention : La suppression d'un volume efface définitivement toutes les données qui y sont stockées !