Cuando empezamos a construir nuestras propias imágenes Docker, nos encontramos que al listar las imágenes aparecen algunas con el nombre y la etiqueta con el valor <none>
. Estas son imágenes intermedias que se han generado y que no forman parte de ninguna imagen, por lo tanto pueden ocupar espacio en disco que no es necesario. Estas imágenes se llaman "colgadas" (dangling).
Por ejemplo:
$ $ docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
josedom24/ejemplo1 v1 c23cf3f2d251 3 minutes ago 187MB
<none> <none> ea9228809799 36 minutes ago 187MB
...
Si queremos borrar estas imágenes podemos ejecutar:
$ docker image prune
WARNING! This will remove all dangling images.
Are you sure you want to continue? [y/N]
Si además añadimos el parámetro -a
se eliminaran todas las imágenes que no tienen ningún contenedor creado.
$ docker image prune -a
WARNING! This will remove all images without at least one container associated to them.
Are you sure you want to continue? [y/N]
Si queremos eliminar los contenedores que están parados, podemos ejecutar:
$ docker container prune
WARNING! This will remove all stopped containers.
Are you sure you want to continue? [y/N]
Para eliminar redes que no se estén utilizando podemos ejecutar:
$ docker network prune
WARNING! This will remove all custom networks not used by at least one container.
Are you sure you want to continue? [y/N]
Para eliminar volúmenes que no se están utilizando por ningún contenedor:
$ docker volume prune
WARNING! This will remove anonymous local volumes not used by at least one container.
Are you sure you want to continue? [y/N]
Por último, podemos borrar todos los elementos que no se están utilizando con una sola instrucción: docker system prune
. Para borrar los volúmenes no usados debemos usar el parámetro --volumes
:
$ docker system prune --volumes
WARNING! This will remove:
- all stopped containers
- all networks not used by at least one container
- all anonymous volumes not used by at least one container
- all dangling images
- unused build cache
Are you sure you want to continue? [y/N]