Comprender la instrucción de volumen en Docker

Comprender la instrucción de volumen en Docker

En Docker, podemos crear imágenes, contenedores y volúmenes separados. Los volúmenes se pueden montar cada vez que iniciamos un contenedor.

Si podemos hacerlo manualmente en Docker, podemos automatizarlo a través de un proceso de compilación que usa un archivo llamado Dockerfile.

Este artículo analizará la creación, creación y montaje de volúmenes a través de Dockerfile en Docker.

Comprender la instrucción VOLUMEN en Docker

Cuando trabajamos con un Dockerfile, usamos varias instrucciones para automatizar la creación de uno o varios contenedores. Un ejemplo de estas instrucciones es la instrucción VOLUMEN.

En un Dockerfile, debería verse así:

FROM ubuntu
RUN mkdir /samplevol
VOLUME /samplevol

Sin embargo, existe cierta confusión cuando intentamos ingresar el valor de la instrucción VOLUMEN dentro de nuestro Dockerfile. Cuando usamos la instrucción VOLUMEN, debemos comprender que aquí no es donde indicamos la ubicación de nuestro volumen Docker fuera del contenedor.

En cambio, la instrucción VOLUMEN es donde le decimos al destino dónde dentro de un contenedor montaremos nuestro volumen Docker externo cuando el contenedor ya se esté ejecutando.

Si recordamos, cuando ejecutamos un contenedor, podemos usar el parámetro --volume o -v para montar un volumen específico. Sin embargo, hay otros propósitos para este parámetro.

Por ejemplo, con el parámetro --volume podemos especificar en qué ubicación debemos montar el volumen de Docker.

Comando de ejemplo:

docker run --volume=/volumesd:/samplevol sushi_bake

En el comando anterior, el directorio /volumesd es la ubicación del volumen Docker desmontado. El directorio /samplevol es donde montaremos el volumen Docker dentro del contenedor creado y en ejecución.

Además, el directorio /samplevol es el valor correcto para la instrucción VOLUME dentro de nuestro Dockerfile.

Alternativamente, podemos evitar la confusión al no agregar una instrucción VOLUME en nuestro Dockerfile. Si no agregamos un punto de montaje en nuestra instrucción VOLUMEN, Docker asigna una ubicación predeterminada para montar el volumen.

La ubicación suele estar en /var/lib/docker/volumes.

Marion Paul Kenneth Mendoza avatar Marion Paul Kenneth Mendoza avatar

Marion specializes in anything Microsoft-related and always tries to work and apply code in an IT infrastructure.

LinkedIn