En este tutorial, te mostraré cómo limpiar Docker para liberar espacio en disco en tu servidor o computadora.
Si bien las imágenes de contenedores Docker no necesariamente ocupan mucho espacio, Docker puede ocupar una cantidad significativa de espacio en una computadora, especialmente cuando:
- Actualizamos las imágenes periódicamente.
- Recopilamos nuestras propias imágenes
- Cuando detenemos los servicios
Después de un tiempo, es posible que tengas varias docenas de gigabytes de espacio en disco ocupados por archivos que ya no se utilizan.
Veremos cómo recuperar este espacio.
Tabla de contenido
Mostrar el espacio utilizado por Docker
Para comenzar, para tener una idea del espacio total utilizado, puedes utilizar el siguiente comando:
sudo docker system df
Este comando nos muestra el espacio en disco utilizado por Docker, ya sean las imágenes y volúmenes del contenedor o el caché de compilación.
El comando también nos dice cuánto espacio en disco se puede recuperar en la columna RECUPERABLE.
Para limpiarlo puedes hacerlo de las siguientes maneras:
- Limpia todo a la vez con un solo comando
- Realiza varios pedidos para eliminar lo que quieras
Vamos a ver ambos.
Eliminar todos los elementos no utilizados en Docker
La forma más fácil y rápida de limpiar de una sola vez es con el siguiente comando:
sudo docker system prune --all
El pedido requiere confirmación
Espere mientras limpia:
Una vez realizada la limpieza, el comando nos devuelve el espacio que había sido liberado.
En total se liberaron 1,47 GB de espacio en disco, que es más de lo que proporcionó el comando docker system df.
Esto se explica por la limpieza del caché de compilación que no se había tenido en cuenta.
Esta solución es práctica porque permite limpiar rápidamente todo excepto los volúmenes.
Eliminar manualmente elementos Docker no utilizados
Veremos cómo eliminar los siguientes elementos:
- Imágenes
- Volúmenes
- Redes
- Construir caché
Cada vez que el comando solicita confirmación, para forzar la ejecución del comando, debe agregar el parámetro -f.
Docker: eliminar imágenes innecesarias
Antes de eliminar las imágenes, puedes utilizar el siguiente comando para verlas:
sudo docker image ls
Eliminar imágenes de contenedores que ya no sean útiles:
sudo docker image prune --all
Docker: eliminar volúmenes que ya no se utilizan
Eliminar volúmenes puede provocar la pérdida de datos. Antes de eliminar volúmenes, asegúrese de que ya no los necesita.
Para listar volúmenes, ingrese el siguiente comando:
sudo docker volume ls
Para ver los detalles de un volumen:
sudo docker volume inspect <volume-name>
Introduzca el siguiente comando para eliminar volúmenes que ya no están en uso:
sudo docker volume prune --all
Eliminar redes no utilizadas
Para eliminar redes:
sudo docker network prune
Borrar caché de compilación
Para eliminar el caché de imágenes que has creado introduce el siguiente comando:
sudo docker builder prune --all
La limpieza de Docker ya no es un secreto para ti.