Soy bastante nuevo en Docker y en las herramientas de administración de configuración.
Al principio comencé a escribir scripts de bash para aprovisionar mis cajas Vagrant para mis máquinas de desarrollo, pero ahora he cambiado a usar Chef para eso, de modo que pueda usar la misma fuente para aprovisionar entornos de desarrollo y producción para tratar de obtenerlos como similares como sea posible.
Desde que comencé a usar Chef, he llegado a disfrutar el aspecto SECO de no tener que copiar y pegar líneas de script de shell de proyecto a proyecto, la capacidad de aprovisionar máquinas que ejecutan una variedad de distribuciones de Linux utilizando una fuente consolidada, y la conveniencia de usar libros de cocina proporcionados por la comunidad.
Ahora que he estado usando Chef para aprovisionar mis VM, parece que retrocedo un paso cuando agrego comandos RUN seguidos de comandos de shell a un Dockerfile para lograr lo que se puede lograr simplemente ejecutando una receta de Chef.
Busqué en Google y no encontré nada (pero tal vez me lo perdí), pero no parece que haya una manera fácil de usar recetas de Chef para construir contenedores Docker. ¿Porqué es eso?
Entiendo que los contenedores están destinados a ser inmutables y que las herramientas de administración de configuración se usan comúnmente para reconfigurar máquinas durante toda su vida útil, pero ¿no ofrecerían aún muchos beneficios si se usan durante la construcción inicial del contenedor?