¿Puedo especificar el directorio host para montar desde Dockerfile


El comando Docker run tiene la opción de montar el directorio host en el contenedor

-v=[]: Create a bind mount with: [host-dir]:[container-dir]:[rw|ro]. 
       If "host-dir" is missing, then docker creates a new volume.

Y Dockerfile tiene VOLUME instrucción

VOLUME ["/data"] - The VOLUME instruction will add one or more new volumes 
                   to any container created from the image.

Por lo que veo, no hay forma de especificar host-dir o el estado rw/ro cuando se usa Dockerfile.

¿Hay algún otro uso del VOLUMEN en el archivo docker que no sea querer compartirlo con algún otro contenedor?

 24
Author: Slartibartfast, 2013-09-18

1 answers

Los archivos Dockerfiles están pensados para ser portables y compartidos. El volumen host-dir es algo 100% dependiente del host y se romperá en cualquier otra máquina, lo que está un poco fuera de la idea de Docker.

Debido a esto, solo es posible usar instrucciones portables dentro de un Dockerfile. Si necesita un volumen host-dir, debe especificarlo en tiempo de ejecución.

Un uso común del VOLUMEN de Dockerfile es almacenar la configuración o las fuentes del sitio web para que pueda ser actualizado más tarde por otro contenedor.

 24
Author: creack,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2014-07-08 21:32:44