
Continuous Delivery in Java
Abraham Marín-Pérez, Daniel Bryant
- Editorial
- O'Reilly
- Año
- 2018
- Páginas
- ~482
- Nivel
- Intermedio
De qué trata
Manual exhaustivo enfocado en trasladar las prácticas y la cultura de la entrega continua (Continuous Delivery) al ecosistema de la JVM, trabajando primordialmente con Java 8 y Java 11. Daniel Bryant y Abraham Marín-Pérez dirigen esta obra a desarrolladores e ingenieros de software Java de nivel intermedio o avanzado que dominan el lenguaje pero necesitan adquirir competencias operativas y de automatización para llevar código a producción de forma segura, predecible y frecuente.
El libro profundiza en toda la cadena de herramientas y etapas del pipeline de entrega. Explica la automatización de la compilación con Maven y Gradle, el análisis estático y de calidad de código con SonarQube, PMD y Checkstyle, y el empaquetado moderno mediante fat JARs y contenedores Docker. En el ámbito de integración continua, enseña a crear pipelines como código en Jenkins (Jenkinsfile), cubriendo estrategias de pruebas automatizadas con JUnit, Mockito, WireMock y Testcontainers, pruebas de rendimiento con Gatling, y despliegues sin interrupción (Blue-Green y Canary) orquestados sobre Kubernetes y entornos de nube, complementados con observabilidad mediante Prometheus, Grafana y el stack ELK.
A lo largo de los capítulos se toma como hilo conductor la aplicación de ejemplo "Docker Java Shop", un sistema web multicomponente en Java empaquetado en contenedores donde se ponen en práctica los entornos locales reproducibles, los pipelines de Jenkins y el monitoreo en ejecución. La gran aportación del libro es que no se limita a recetas genéricas de DevOps, sino que aborda los desafíos específicos de Java en contenedores (como la gestión de memoria de la JVM, tiempos de arranque y dependencias). Requiere conocimientos sólidos de Java y nociones de terminal; es una obra indispensable para modernizar proyectos Java empresariales hacia la nube.
- Java
- Continuous Delivery
- Jenkins
- Docker
- Kubernetes
- Maven
- Gradle
- Testcontainers
- JUnit
- Observabilidad
- Pipelines como código
¿Cómo enseña?
Teoría + práctica
- ✗ Sin ejercicios
- ✓ Incluye proyectos
Proyectos
Docker Java Shop
Aplicación de comercio web en Java estructurada en servicios y empaquetada en contenedores Docker, empleada para configurar pipelines de CI/CD en Jenkins, pruebas de integración y despliegues en Kubernetes.

