Mientras trabajan en un proyecto de desarrollo en Docker, los desarrolladores generalmente desean realizar modificaciones en el código y ver los cambios reflejados inmediatamente sin reconstruir el contenedor. En esta situación, use un montaje de enlace para montar el directorio de código en su máquina host local en el contenedor. Al hacerlo, las modificaciones realizadas en el host se reflejan inmediatamente dentro del contenedor. Además, es útil cuando el contenedor se elimina o rechaza ya que los datos no se pierden.
Este artículo ilustrará:
¿Qué son los monturas de enlace de Docker??
Un Docker Bind Mount permite a los usuarios asignar un archivo/directorio particular en la máquina host a un archivo/directorio dentro de un contenedor. De esta manera, los usuarios pueden compartir datos entre el host y el contenedor, y también persisten los datos incluso después de que se detenga o elimine el contenedor. Cualquier cambio realizado en archivos en el directorio o archivo compartido es visible tanto desde el contenedor como desde la máquina host.
Cómo funciona el montaje en el bind en Docker?
Tomemos un ejemplo y veamos cómo funciona el montaje en bind en Docker. Supongamos que tenemos un directorio vacío "Prueba" situado en "C: \ Docker"En un sistema local. Ahora, queremos acceder al "Prueba"Contenido del directorio en la ubicación"/aplicación"Desde dentro de un contenedor en particular. En este ejemplo, ejecute un contenedor de la imagen oficial de Docker I.mi., "nginx”Y utilice el montaje de enlace para montar un directorio específico de la máquina host en el contenedor.
Para una mejor comprensión, siga los pasos proporcionados.
Paso 1: Binde el directorio de montaje de la máquina host al contenedor
Primero, utilice el "Docker Run -d -name -v: "Comando y ejecutar un contenedor. Atraa el directorio de montaje de la máquina host al contenedor:
Docker Run -d - -Name MyCont -V C:/Docker/Test:/App Nginx: Último
Aquí:
Este comando ha creado un contenedor y le ha permitido acceder a archivos desde la máquina host y facilitar la gestión de la persistencia de los datos.
Paso 2: cree un archivo en el directorio de origen en la máquina host
Luego, navegue a la ruta del directorio de origen I.mi., "C:/Docker/Test"En la máquina host y crea un archivo de texto sin formato en ella. Por ejemplo, hemos creado un "Manifestación" archivo:
Paso 3: Acceda al archivo de la máquina host dentro del contenedor
Ahora, escriba el comando proporcionado a continuación para acceder al contenido del contenedor y ejecute comandos dentro de él:
Docker Exec -it MyCont Bash
Al hacerlo, se abrirá la carcasa del contenedor.
Después de eso, enumere el contenido del contenedor utilizando el comando proporcionado:
LS
En la captura de pantalla anterior, se puede ver todo el contenido del contenedor. Elija el directorio deseado y navegue a él.
Redirigir al "aplicación"Directorio:
aplicación CD
Luego, enumere el "aplicación"El contenido de directorio para verificar el archivo de máquina local está disponible en él:
LS
Se puede observar que el "Manifestación.TXTEl archivo está disponible dentro del contenedor, y podemos acceder a él.
Paso 4: Crear archivo dentro del contenedor
A continuación, cree otro archivo dentro de un contenedor utilizando el "tocar" dominio:
tocar nuevo.TXT
Hemos creado un "nuevo.TXT" archivo.
Luego, verifique el archivo recién creado utilizando el comando que se encuentra a continuación:
LS
Se puede ver que el archivo "nuevo.TXT"Se ha creado con éxito dentro del contenedor.
Paso 5: Verifique el archivo en el sistema local
Finalmente, navegue a la ruta de la máquina local y verifique si el "nuevo.TXT"El archivo está disponible o no:
Como puede ver, el "nuevo.TXT"El archivo está disponible en la máquina local, y podemos acceder a él. Esto indica que las modificaciones se reflejan en la máquina local también.
Paso 6: Retire el contenedor Docker
Ahora, retire el contenedor a través del "Docker RM"Comando junto con el nombre del contenedor:
Docker RM Mycont
El "mycont"El contenedor ha sido eliminado con éxito.
Paso 7: Asegúrese de que los datos persistieran en la máquina local
Después de eliminar el contenedor, verifique si los datos persistieron en la máquina local en no:
Como puede ver, los cambios persistieron incluso después de eliminar el contenedor de montaje de enlace.
Conclusión
Docker Bind Mount se usa para asignar un directorio o archivo desde el sistema de host en el contenedor. Crea un enlace entre el directorio o archivo especificado en el host y el sistema de archivos del contenedor. Hace que sea fácil y fácil de tratar o trabajar con archivos que se almacenan fuera del contenedor. Cualquier cambio realizado en archivos en el directorio o archivo compartido se reflejará tanto en el host como en el contenedor. Este artículo ha explicado sobre Docker Bind Mount y su trabajo en Docker.