Si acumulas volúmenes sin utilizar, podrías estar des­apro­ve­cha­n­do recursos valiosos como el espacio de al­ma­ce­na­mie­n­to y la capacidad de pro­ce­sa­mie­n­to. Al borrar un volumen en Docker no utilizado, puedes aumentar la efi­cie­n­cia y el re­n­di­mie­n­to de tu pla­ta­fo­r­ma de co­n­te­ne­do­res.

¿Cuándo hay que borrar volúmenes en Docker?

Un volumen de Docker es un área de al­ma­ce­na­mie­n­to aislada que pueden utilizar los Docker co­n­tai­ne­rs para almacenar archivos, co­n­fi­gu­ra­cio­nes, registros u otros datos durante el ciclo de vida del co­n­te­ne­dor. Estos volúmenes son in­de­pe­n­die­n­tes de las in­s­ta­n­cias del co­n­te­ne­dor y se pueden crear, ad­mi­ni­s­trar y borrar fá­ci­l­me­n­te. Si des­in­s­ta­las co­n­te­ne­do­res asociados a un volumen es­pe­cí­fi­co y ya no necesitas los datos que contienen, lo mejor es que borres ese volumen.

Un entorno Docker limpio y ordenado resulta más fácil de gestionar y mantener. Al eliminar los volúmenes no uti­li­za­dos, puedes reducir la co­m­ple­ji­dad de tu in­frae­s­tru­c­tu­ra de co­n­te­ne­do­res. En los entornos basados en la nube, los volúmenes que no se utilizan también pueden generar costes. Eliminar estos volúmenes puede ayudarte a reducir tus gastos mensuales y aumentar la seguridad del sistema, ya que los datos co­n­fi­de­n­cia­les que hubiera al­ma­ce­na­dos en ellos ya no serán ac­ce­si­bles. De esta manera, se co­n­tri­bu­ye en pa­r­ti­cu­lar a prevenir fi­l­tra­cio­nes de datos.

Sin embargo, debes tener en cuenta que los volúmenes deben eli­mi­nar­se con cuidado para ga­ra­n­ti­zar que no se pierda ningún dato im­po­r­ta­n­te que requieran los co­n­te­ne­do­res en ejecución. Antes de borrar volúmenes en Docker, re­co­me­n­da­mos crear copias de seguridad. También es aco­n­se­ja­ble ide­n­ti­fi­car volúmenes que estén obsoletos y eli­mi­nar­los al realizar el ma­n­te­ni­mie­n­to regular de la in­frae­s­tru­c­tu­ra Docker.

Lee más in­fo­r­ma­ción sobre la gestión de Docker volumes.

Eliminar uno o más volúmenes es­pe­cí­fi­cos

En Docker 1.9 y versiones su­pe­rio­res, puedes eliminar uno o varios volúmenes concretos uti­li­za­n­do el comando docker volume rm y es­pe­ci­fi­ca­n­do sus nombres o ID.

Paso 1. Listar Docker volumes

Para obtener primero una lista de los volúmenes Docker exi­s­te­n­tes, puedes ejecutar el comando docker volume ls en tu sistema. Después verás una tabla con in­fo­r­ma­ción sobre los volúmenes, que incluye los nombres y los ID.

docker volume ls
bash

Paso 2. Borrar un volumen en Docker

Ahora puedes eliminar los volúmenes se­le­c­cio­na­dos in­tro­du­cie­n­do el comando docker volume rm y, a co­n­ti­nua­ción, sus nombres o ID separados por espacios.

docker volume rm VOLUME_NAME_OR_ID basa
bash

Es aco­n­se­ja­ble ase­gu­rar­se de que no haya co­n­te­ne­do­res en ejecución uti­li­za­n­do los volúmenes que se quieren borrar. La eli­mi­na­ción de volúmenes en este caso podría resultar en la pérdida irre­pa­ra­ble de datos.

Borrar un volumen Docker sin re­fe­re­n­cia

Los Docker volumes sin re­fe­re­n­cia son volúmenes que ya no están vi­n­cu­la­dos a co­n­te­ne­do­res o servicios. Eliminar estos volúmenes sin re­fe­re­n­cia puede ayudarte a liberar espacio de al­ma­ce­na­mie­n­to no utilizado y mejorar la gestión de tu in­frae­s­tru­c­tu­ra Docker. Para borrar volúmenes Docker sin re­fe­re­n­cia, puedes seguir los si­guie­n­tes pasos:

Paso 1. Listar volúmenes sin re­fe­re­n­cia

Al ejecutar el siguiente comando, obtendrás una lista de los volúmenes sin re­fe­re­n­cia de tu sistema que estén co­n­si­de­ra­dos como dangling. Después, puedes limpiar o borrar estos volúmenes según tus ne­ce­si­da­des.

docker volume ls -f dangling=true
bash

Paso 2. Eliminar volúmenes sin re­fe­re­n­cia

El comando docker volume prune pide co­n­fi­r­ma­ción antes de eliminar los volúmenes sin re­fe­re­n­cia. Puedes escribir “y” o “yes” para confirmar que quieres eliminar los volúmenes.

docker volume prune
bash

Eliminar un co­n­te­ne­dor y su volumen

Con el comando docker rm -v container_name puedes eliminar un Docker Container y, al mismo tiempo, todos los volúmenes vi­n­cu­la­dos a este co­n­te­ne­dor. Si aplicas el comando a un co­n­te­ne­dor asociado a volúmenes con nombre, el co­n­te­ne­dor se eliminará y todos los volúmenes con nombre vi­n­cu­la­dos a este co­n­te­ne­dor pe­r­ma­ne­ce­rán intactos. Estos volúmenes seguirán estando di­s­po­ni­bles en tu sistema, podrán ser uti­li­za­dos por otros co­n­te­ne­do­res y co­n­se­r­va­rán su nombre pe­r­so­na­li­za­do. En el caso de los volúmenes sin nombre, estos se eliminan de forma irre­ve­r­si­ble y los datos que contienen se pierden.

En otro artículo te ex­pli­ca­mos con más detalle cómo borrar Docker Co­n­tai­ne­rs.

Borrar un volumen en Docker asociado a un co­n­te­ne­dor

El indicador -v significa “volúmenes” y es la opción que se añade al comando docker rm para es­pe­ci­fi­car que también deben eli­mi­nar­se todos los volúmenes asociados al co­n­te­ne­dor.

docker rm -v container_name
bash
Ir al menú principal