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 :
docker volume create
docker volume ls
docker volume inspect
docker volume rm
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
.
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.
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.
docker volume ls
La sortie contiendra des informations sur tous les volumes existants :
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.
docker volume inspect my_volume
La sortie de la commande contiendra des infos au format 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é.
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.
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 :
docker volume create app_data
Lancer un conteneur en utilisant le volume :
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 :
docker volume create logs_data
Lancer un conteneur en utilisant le volume :
docker run -d --name log_app -v logs_data:/var/log/app busybox
Afficher les informations sur le volume :
docker volume inspect logs_data
Exemple 3 : Suppression et nettoyage des volumes
Création et utilisation d'un volume :
docker volume create temp_data
docker run -d --name temp_app -v temp_data:/tmp busybox
Arrêt et suppression du conteneur :
docker stop temp_app
docker rm temp_app
Suppression du volume :
docker volume rm temp_data
Nettoyage de tous les volumes inutilisés :
docker volume prune
GO TO FULL VERSION