¿Qué es Docker Volume?

Autor: | Última modificación: 3 de mayo de 2022 | Tiempo de Lectura: 4 minutos
Temas en este post:

El término Docker Volume, también denominado volúmenes de Docker, hace referencia al mecanismo utilizado normalmente dentro del sistema con el objetivo de conservar los datos que se generan y usan por los contenedores de Docker.

Docker Volume se presenta como una herramienta que facilita el respaldo y la migración de los datos, que pueden administrarse de forma directa por los comandos de CLI de Docker y que, además, pueden cumplir sus funciones en los contenedores de Docker que se encuentren tanto en el sistema operativo Linux como en el entorno de Windows.

Funciones de Docker Volume

Dentro de las funciones de Docker Volume se encuentra su uso para obtener la persistencia de datos, lo que hará que la información de los contenedores determinados por el usuario pueda almacenarse en una parte del sistema de ficheros, que se gestiona directamente por Docker. Este, además, será el único que pueda tener acceso a estos datos, debido a los permisos y privilegios establecidos por la plataforma.

Esta herramienta de Docker también puede utilizarse en los casos de copias de seguridad, que luego pueden aprovechar otros contenedores, o bien para movilizar estos volúmenes a otras máquinas de host.

Docker Volume también contribuye en los procesos en los que el cliente desea almacenar los datos de su contenedor, no de forma local, sino dentro de un proveedor de nube.

En términos generales, Docker Volume resulta la mejor de las opciones disponibles, por encima de los datos persistentes en la capa de escritura propia de un contenedor de la plataforma. Esto se debe a que un volumen de Docker no va a aumentar el tamaño de los contenedores que lo usan, y además, el contenido de dicho volumen existe también por fuera del ciclo de vida un determinado contenedor.

Comandos de Docker Volume

Algunos de los comandos que pueden utilizarse para administrar los volúmenes de Docker son los siguientes:

Docker Volume Create

🔴 ¿Quieres entrar de lleno al mundo DevOps & Cloud Computing? 🔴

Descubre el DevOps & Cloud Computing Full Stack Bootcamp de KeepCoding. La formación más completa del mercado y con empleabilidad garantizada

👉 Prueba gratis el Bootcamp en DevOps & Cloud Computing por una semana

Hace referencia a la opción de crear un volumen en Docker donde los contenedores tengan la opción de consumir y almacenar datos. Para ejecutar este comando, se requiere que tanto la Aplicación para la Programación de Aplicaciones del cliente como la del daemon sean igual o superior a 1.21.

Docker Volume Inspect

Este comando se utiliza con el objetivo de ofrecer información detallada acerca de uno o más volúmenes de Docker. Al igual que la opción anterior, el comando Docker Volume Inspect necesita que la API del cliente y la del demonio sean, como mínimo, de 1.21.

Docker Volume ls

La ejecución de este comando devuelve un listado de todos los volúmenes conocidos por el sistema de Docker. El usuario tiene la posibilidad de filtrar estos resultados de acuerdo con sus requerimientos.

Docker Volume Prune

Este comando cumple la función de eliminar la totalidad de volúmenes locales que no se están utilizando dentro del sistema, es decir, aquellos a los que no hace referencia ninguno de los contenedores.

Docker Volume RM

Es una opción que permite que el usuario elimine uno o más volúmenes de la plataforma. Cabe resaltar que no se puede eliminar algún volumen que esté siendo utilizado por un contenedor.

Docker Volume vs Docker Bind Mounts

Docker Volume se suele relacionar con la herramienta Docker Bind Mounts, también llamada montajes de enlace de Docker, puesto que ambos tienen la capacidad de ofrecer un almacenamiento a los contenedores del sistema. Sin embargo, estas herramientas cuentan con una serie de elementos que las distinguen entre sí, como, por ejemplo, que los montajes de enlace de Docker dependen de que exista una estructura de directorios específica y disponible, y que el sistema operativo de la máquina host sea compatible. Mientras tanto, en el caso de Docker Volume, la plataforma de Docker es quien se encarga de forma directa de gestionar los volúmenes, por lo que el usuario no tiene que preocuparse de elementos adicionales.

Además de esto, los volúmenes de Docker tienen la ventaja de poder compartirse de manera segura entre distintos contenedores del sistema; para esto, solo tendrán que usar el mismo volumen. Mientras tanto, Docker Bind Mounts no presenta esta opción.

Docker Volume también se distingue de Docker Bind Mounts debido a que sus controladores le permiten realizar un almacenamiento de los volúmenes dentro de host remotos, o bien en proveedores de cloud, al tiempo que contribuye a cifrar el contenido de estos volúmenes o agregar funciones adicionales.

Los nuevos volúmenes de Docker también se caracterizan por poder rellenar su contenido de manera previa por un contenedor del sistema. Además de esto, es importante resaltar que los Docker Volume en su versión Desktop cuentan con un mayor rendimiento que la herramienta de Docker Bind Mounts de los host de los sistemas operativos de Mac y Windows.

¿Cuál es el siguiente paso?

En este artículo has podido conocer qué es la herramienta Docker Volume, además de cuáles son sus características, opciones y comandos principales, así como su diferencia con el Docker Bind Mounts. Ahora que ya has llegado hasta aquí, no dudes en dar ir un paso más allá y sigue aprendiendo acerca de este y otros elementos de Docker y sus contenedores a través de nuestro DevOps & Cloud Computing Full Stack Bootcamp. Con este bootcamp solo necesitarás 6 meses para conocer todo lo necesario para ser un experto y destacar dentro del sector IT. ¡Anímate a inscribirte en este bootcamp para seguir aprendiendo sobre contenedores y mucho más!

[email protected]