Retour au cours

Leçon 12 : Utilisation des Volumes pour la Persistance Gérée des Données

Docker, de zéro à héros : Le cours complet sur la conteneurisation pour débutants

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

  1. Démarrez le conteneur (comme ci-dessus).

  2. Arrêtez le conteneur : bash docker stop my_postgres

  3. Supprimez le conteneur (mais pas le volume !) : bash docker rm my_postgres

  4. 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 !