GNU/Linux >> Tutoriales Linux >  >> Panels >> Docker

Cómo montar o enlazar un solo archivo en un contenedor Docker

Los montajes de volumen y vinculación de Docker se utilizan para vincular directorios en el sistema operativo host a ubicaciones en el sistema de archivos del contenedor. Si bien se usan comúnmente para montar directorios completos, también puede usarlos para vincular archivos individuales.

Enlace simbólico a Docker desde el host

El montaje de directorios completos funciona bien si está sobrescribiendo una lista completa de archivos de configuración, pero si solo desea apuntar a uno, deberá usar un montaje de un solo archivo. Esto también es útil si desea tener varios montajes en el mismo directorio, pero desde diferentes ubicaciones. Funciona de forma muy similar a un enlace simbólico normal de Linux, excepto que se maneja a través de Docker y cruza el puente entre el host y el sistema de archivos del contenedor.

Los montajes de volumen normales de Docker requieren que se monte en un directorio de destino , dentro del cual se vinculará el volumen.

docker volume create nginx-config

docker run -d 
--name devtest 
--mount source=nginx-config,target=/etc/nginx 
nginx:latest

Sin embargo, con los montajes de enlace, la fuente puede ser un directorio o un archivo en el anfitrión. Los montajes de volumen no son compatibles con esto y, aunque normalmente desea usarlos, debe usar los montajes de enlace de nivel inferior si desea montar archivos individuales.

Para hacer esto, puede ejecutar el contenedor con el indicador --mount type=bind , que admiten archivos individuales si especifica la ruta:

docker run -it 
--mount type=bind,source=/path/file.cfg,target=/etc/example/file.cfg 
nginx sh

Alternativamente, si realmente quisiera usar volúmenes de Docker, podría crear un volumen solo con el archivo que planea montar, montarlo en un directorio temporal en el contenedor y luego crear un enlace simbólico real dentro del contenedor (en el script de compilación de Docker ) que vincularía al directorio temporal con el archivo. Probablemente sea una solución peor que un montaje de vinculación en general, pero le permite almacenar los datos a través de la API de volumen de Docker.


Docker
  1. ¿Cómo ejecutar un programa dentro de un contenedor Docker?

  2. ¿Extraer archivo de la imagen de Docker?

  3. Cómo ejecutar MySQL en un contenedor Docker

  4. Cómo listar contenedores Docker

  5. Cómo salir de un contenedor Docker

Cómo vincular un archivo en Linux

¿Qué es Docker? ¿Como funciona?

Cómo ejecutar PHPMyAdmin en un contenedor Docker

Cómo ejecutar Grafana en un contenedor Docker

Cómo configurar un contenedor Apache Docker

Cómo ejecutar contenedores Docker