Ceci est une ancienne révision du document !
Il n'est pas possible de monter directement un sous répertoire présent sur un volume nommé cependant on peut obtenir un résultat équivalent en utilisant les liens symboliques.
Pour l'exemple on souhaite partager un volume nommé entre plusieurs services sauvegarder les données produites par une base de données MySQL dans un volume nommé partager
# In the Dockerfile: RUN mkdir -p /data/subdir RUN ln -s /data/subdir /var/www/subdir
Pour exporter un volume et le transférer vers un autre hôte ici via ssh:
docker run --rm -v datavol:/data:ro busybox:latest tar -C /data -cf- . | ssh server.fqdn docker run --rm -i -v datavol:/data busybox:latest tar -C /data -xf-
Pour créer une archive sur le système de fichier local
docker container run --rm --interactive --tty --volume $(pwd)/backup:/mnt/backup --volume datavol:/mnt/datavol:ro busybox:latest /bin/tar -cvzf /mnt/backup/backup_volume.tar /mnt/datavol
source : https://stackoverflow.com/questions/68229758/export-docker-volume-to-another-machine
Pour avoir une vue globale de l'espace disque utilisé par Docker, il existe la commande docker system df:
docker system df TYPE TOTAL ACTIVE SIZE RECLAIMABLE Images 21 5 7.217GB 6.723GB (93%) Containers 5 5 191.2kB 0B (0%) Local Volumes 10 3 784.1MB 634.1MB (80%) Build Cache 0 0 0B 0B
Dans l'exemple ci-dessus on peut rapidement évaluer la partie occupée par les volumes grâce au résumé exprimé en pourcentage.
Utiliser l'option -v ou --verbose pour obtenir une réponse plus exhaustive.
Pour déterminer quel répertoire est utilisé localement pour sauvegarder les données di volume, utiliser la commande docker volume inspect:
docker volume inspect dokuwiki_phobos_databank [ { "CreatedAt": "2021-02-03T00:26:42+01:00", "Driver": "local", "Labels": {}, "Mountpoint": "/var/lib/docker/volumes/dokuwiki_phobos_databank/_data", "Name": "dokuwiki_phobos_databank", "Options": {}, "Scope": "local" } ]
La valeur de Mountpoint permet d'identifier le répertoire associé au volume. Un outil tel que ncdu permettra alors rapidement d'évaluer quelle partie de l'arborescence consomme de l'espace disque:
# Analyse interactive en console via ncdu ncdu /var/lib/docker/volumes/dokuwiki_phobos_databank/_data