
Deploying Rails with Docker, Kubernetes and ECS
Pablo Acuña
- Editorial
- Apress
- Año
- 2016
- Páginas
- ~127
- Nivel
- Intermedio
De qué trata
Guía técnica condensada y directa en la que el ingeniero de software Pablo Acuña muestra cómo empaquetar, orquestar y desplegar aplicaciones web modernas de Ruby on Rails (utilizando Rails 5 en modo API) en entornos productivos basados en contenedores. Está pensada para desarrolladores backend de Ruby on Rails de nivel intermedio que buscan dar sus primeros pasos en la cultura DevOps y familiarizarse con el despliegue en la nube, requiriendo conocimientos previos en el desarrollo de APIs con Rails y conceptos básicos de bases de datos relacionales.
El recorrido formativo enseña a crear y estructurar una aplicación API de Rails 5 conectada a una base de datos PostgreSQL, para luego construir imágenes optimizadas mediante Dockerfiles y coordinar servicios con Docker Compose antes de publicarlas en Docker Hub. Posteriormente, detalla la definición de manifiestos y plantillas de configuración de Kubernetes (Pods, ReplicaSets, Services, Deployments y volúmenes de almacenamiento persistente), evaluándolos en local con Minikube y desplegándolos en producción sobre un clúster en Amazon Web Services (AWS). Además, expone una ruta alternativa implementando contenedores en Amazon EC2 Container Service (Amazon ECS) usando ECS-CLI y Amazon RDS, rematando con la configuración de un servidor Jenkins para orquestar la integración y entrega continua (CI/CD).
El texto es completamente práctico y sigue el ciclo de vida de un proyecto único: una API Rails que pasa de ejecutarse en local a estar contenida en Docker, orquestada en Kubernetes y desplegada en Amazon ECS con pruebas automatizadas en Jenkins. Su principal atractivo es la brevedad y claridad con la que contrasta dos opciones de orquestación en AWS (Kubernetes frente a ECS); sin embargo, dado que fue editado en 2016, muchas APIs de Kubernetes y herramientas como la CLI de ECS o versiones de Jenkins han cambiado sustancialmente, por lo que el lector deberá adaptar comandos y versiones a la realidad actual.
- Ruby on Rails 5
- Docker
- Docker Compose
- Docker Hub
- Kubernetes
- Amazon ECS
- AWS
- PostgreSQL
- Minikube
- Jenkins
- CI/CD
¿Cómo enseña?
Con proyectos
- ✗ Sin ejercicios
- ✓ Incluye proyectos
Proyectos
Aplicación Rails 5 API en contenedores desplegada en Kubernetes y Amazon ECS
Construcción y dockerización de una API en Rails 5 conectada a PostgreSQL, probada localmente con Minikube y desplegada en clústeres productivos de AWS tanto con Kubernetes como con Amazon ECS.
Pipeline de integración y entrega continua con Jenkins
Configuración de una instancia de Jenkins en AWS para compilar imágenes de Docker, ejecutar baterías de pruebas y desplegar automáticamente las actualizaciones de la aplicación Rails.

