rails new compose app ruby-on-rails capistrano docker

ruby on rails - new - Ejecución e implementación de Rails to Docker Container



dockerfile rails 5 (2)

Si tuviera que emplear a Docker, ¿dónde se ubicaría mi aplicación?

Se puede colocar dentro del contenedor o en el host (puede usar la compilación de docker para copiar la aplicación en el contenedor)

¿Cómo desplegaría (producción) y compartiría directorios (desarrollo)?

Implementar su aplicación significaría comprometer su contenedor local en una imagen, publicarla y ejecutar un contenedor con las imágenes publicadas en sus servidores. No he intentado compartir directorios entre el host y el contenedor, pero puede intentar esto: https://gist.github.com/jpetazzo/5668338 . También puede escribir un Dockerfile que puede copiar un directorio a un destino en el contenedor. Los documentos de Docker sobre la construcción de imágenes te ayudarán allí.

¿Puedo ejecutar todos mis servicios adicionales, es decir, memcache, redis, postgresql, etc. en el mismo servidor usando la ventana acoplable?

Sí. Estará ejecutando múltiples contenedores en el mismo servidor.

Soy un noob total a los contenedores de Linux y he pasado algún tiempo aprendiendo sobre Docker , y perdono mi confusión, pensé esta pregunta. Actualmente, tengo una aplicación Rails en producción desplegada a través de capistrano. Mis servidores en la nube se mantienen con Opscode Chef en la distribución Debian Wheezy. Para el desarrollo, tengo una máquina virtual Vagrant preinstalada con la aplicación y los servicios.

Si tuviera que emplear a Docker, ¿dónde se ubicaría mi aplicación? ¿El contenedor o el host? ¿Cómo desplegaría (producción) y compartiría directorios (desarrollo)? ¿Puedo ejecutar todos mis servicios adicionales, es decir, memcache, redis, postgresql, etc. en el mismo servidor usando la ventana acoplable? Tal vez pueda imaginar el potencial de Docker pero tener problemas para ver su uso práctico.

Parece que los contenedores son parte del futuro. ¿Alguna guía para alguien que hace el cambio de la virtualización?


No soy un experto y ni siquiera he usado la ventana acoplable, pero según tengo entendido, su aplicación se encuentra dentro de un contenedor de la ventana acoplable. Idealmente, implementaría un contenedor completo con su propia versión de ruby ​​instalada, etc.

El gran beneficio es que puede probar exactamente el mismo contenedor en su sistema de clasificación que enviará a producción en ese momento. Así que puedes probar el sistema completo con todas las extensiones C instaladas, exactamente el mismo comando ls y así sucesivamente.