He leído sobre Docker, boot2docker y el proveedor de Docker de Vagrant y creo que tengo una idea bastante firme de cómo funciona todo esto. Sin embargo, todavía hay una cosa que aún no he descubierto.
Las máquinas virtuales Docker Host (como TCL en boot2docker) proporcionan un entorno VM "proxy" para permitirnos usar Docker en hosts que no sean Linux. Ahora, digamos, si quiero reproducir un determinado entorno de producción, ¿realmente importa qué Docker Host VM realmente utilizo? ¿Por qué habría una demanda para elegir una máquina virtual host diferente?
El razonamiento aquí es que simplemente puedo derivar servicios como httpd y mysql FROM
los cuadros deseados, es decir, si uso boot2docker y mi entorno de producción ejecuta Ubuntu 14.04, simplemente puedo "extender" la imagen de Ubuntu en mi Dockerfile
y listo.
¿Estoy en lo cierto al pensar que cambiar la Docker Host VM solo sería deseable al reproducir un entorno de producción que también utiliza las tecnologías Docker? Mi caso de uso particular implica el uso de Docker (y Vagrant, también) solo con fines de aislamiento en mi propio entorno de desarrollo. Esta puede ser la razón por la que casi perdí el punto de una máquina virtual host personalizada.
Según tengo entendido, usar Vagrant con Docker es solo otro nivel de abstracción para crear un entorno de desarrollo persistente y portátil. Sin embargo, teniendo en cuenta que es posible forzar a Vagrant a usar una máquina virtual host particular, incluso en hosts Linux, creo que es importante usar una máquina host personalizada, pero aún no lo sé.
fuente