Filtrar volúmenes por estado de "dangling"
En este paso, aprenderemos cómo filtrar los volúmenes de Docker según su estado de "dangling" (sin uso). Un volumen "dangling" es un volumen que actualmente no está adjunto a ningún contenedor. Estos volúmenes pueden consumir espacio en disco innecesariamente.
Para filtrar los volúmenes "dangling", usamos la opción --filter dangling=true
.
Primero, creemos un contenedor y adjuntemos uno de nuestros volúmenes a él. Usaremos la imagen ubuntu
. Si no tienes la imagen ubuntu
localmente, Docker la descargará automáticamente.
docker run -d --name mycontainer -v myvolume:/app ubuntu sleep 3600
Este comando ejecuta un contenedor llamado mycontainer
en modo desatendido (-d
), monta myvolume
en el directorio /app
dentro del contenedor (-v myvolume:/app
), utiliza la imagen ubuntu
y mantiene el contenedor en ejecución durante una hora (sleep 3600
).
Ahora, listemos todos los volúmenes nuevamente:
docker volume ls
Verás tanto myvolume
como another_volume
. myvolume
está siendo utilizado actualmente por mycontainer
. another_volume
no está adjunto a ningún contenedor, por lo que es un volumen "dangling".
Ahora, filtremos los volúmenes "dangling":
docker volume ls --filter dangling=true
Deberías ver another_volume
en la salida, ya que no está adjunto a ningún contenedor en ejecución.
Para ver los volúmenes que no son "dangling" (es decir, adjuntos a un contenedor), puedes usar --filter dangling=false
.
docker volume ls --filter dangling=false
Esto debería mostrar myvolume
.
Finalmente, detengamos y eliminemos el contenedor que creamos.
docker stop mycontainer
docker rm mycontainer
Ahora, si listas los volúmenes "dangling" nuevamente:
docker volume ls --filter dangling=true
Tanto myvolume
como another_volume
deberían aparecer ahora como "dangling", porque myvolume
ya no está adjunto a un contenedor.