CodeGym /Cours /Docker SELF /Création et gestion des volumes

Création et gestion des volumes

Docker SELF
Niveau 19 , Leçon 1
Disponible

2.1 Commandes principales de docker volume

Les volumes (volumes) dans Docker permettent de stocker durablement les données des conteneurs et rendent facile la gestion et l'isolation des données. La commande docker volume offre un ensemble d'outils pour créer, gérer et supprimer des volumes. Dans cette conférence, on va voir comment utiliser la commande docker volume pour gérer efficacement les volumes dans Docker.

Commandes principales de docker volume :

  1. docker volume create
  2. docker volume ls
  3. docker volume inspect
  4. docker volume rm
  5. docker volume prune

2.2 Création d'un volume : docker volume create

La commande docker volume create est utilisée pour créer un nouveau volume. Par défaut, Docker crée le volume dans un emplacement standard sur l'hôte, mais tu peux aussi spécifier différents paramètres pour configurer le volume.

Exemple simple de création de volume

Cet exemple va créer un volume nommé my_volume.

Terminal

docker volume create my_volume

Création d'un volume avec des paramètres

Tu peux définir un driver et des options pour créer un volume avec des caractéristiques spécifiques.

Terminal

docker volume create --driver local --opt o=uid=1000 --opt o=gid=1000 --opt type=tmpfs --opt 
device=tmpfs my_custom_volume

On va examiner tous ces paramètres plus en détail plus tard, pour l'instant ne t'en préoccupe pas trop.

2.3 Liste des volumes : docker volume ls

La commande docker volume ls affiche la liste de tous les volumes créés sur l'hôte.

Terminal

docker volume ls

La sortie contiendra des informations sur tous les volumes existants :

Terminal

DRIVER    VOLUME NAME
local     my_volume
local     my_custom_volume

2.4 Infos sur le volume : docker volume inspect

La commande docker volume inspect fournit des infos détaillées sur un volume spécifique, y compris son emplacement, ses paramètres et son utilisation.

Terminal

docker volume inspect my_volume

La sortie de la commande contiendra des infos au format JSON :

JSON

[
    {
        "CreatedAt": "2023-07-26T12:34:56Z",
        "Driver": "local",
        "Labels": {},
        "Mountpoint": "/var/lib/docker/volumes/my_volume/_data",
        "Name": "my_volume",
        "Options": {},
        "Scope": "local"
    }
]

2.5 Suppression d'un volume: docker volume rm

La commande docker volume rm est utilisée pour supprimer un volume. Il est important de s'assurer que le volume n'est pas utilisé par des conteneurs avant de le supprimer.

Suppression d'un volume

Si le volume est utilisé, Docker affichera une erreur indiquant que le volume ne peut pas être supprimé.

Terminal

docker volume rm my_volume

Nettoyage des volumes inutilisés: docker volume prune

La commande docker volume prune supprime tous les volumes inutilisés, ce qui aide à libérer de l'espace disque.

Nettoyage des volumes inutilisés

Après l'exécution de la commande, Docker demandera une confirmation avant de supprimer tous les volumes inutilisés.

Terminal

docker volume prune

2.6 Exemples d'utilisation pratique des commandes

Exemple 1 : Création et utilisation d'un volume dans un conteneur

Création d'un volume :

Terminal

docker volume create app_data

Lancer un conteneur en utilisant le volume :

Terminal

docker run -d --name my_app -v app_data:/usr/share/nginx/html nginx

Dans cet exemple, le volume app_data est monté dans le répertoire /usr/share/nginx/html du conteneur nginx.

Exemple 2 : Obtenir des informations sur un volume

Création d'un volume :

Terminal

docker volume create logs_data

Lancer un conteneur en utilisant le volume :

Terminal

docker run -d --name log_app -v logs_data:/var/log/app busybox

Afficher les informations sur le volume :

Terminal

docker volume inspect logs_data

Exemple 3 : Suppression et nettoyage des volumes

Création et utilisation d'un volume :

Terminal

docker volume create temp_data

docker run -d --name temp_app -v temp_data:/tmp busybox

Arrêt et suppression du conteneur :

Terminal

docker stop temp_app

docker rm temp_app

Suppression du volume :

Terminal

docker volume rm temp_data

Nettoyage de tous les volumes inutilisés :

Terminal

docker volume prune
Commentaires
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION