Source: searchitoperations.techtarget.com
Overview
Continuous Delivery with Docker and Jenkins by Rafal Leszko is a hands-on technical book aimed at developers and DevOps engineers who want to build production-grade CI/CD pipelines. It covers the full lifecycle from local development to automated deployment, using Docker for containerization and Jenkins as the CI/CD orchestrator. For teams that have found other CI/CD books outdated or too abstract, this title offers a practical, current alternative.
What the Book Covers
Leszko starts by contrasting traditional software delivery methods with continuous delivery, making a case for CD as the more reliable and scalable approach. He then progressively builds on that foundation, covering:
- Docker fundamentals: What Docker is, how it works, and step-by-step installation and configuration instructions for all major operating systems.
- Jenkins setup: Installing and configuring Jenkins 2, including pipeline-as-code with Jenkinsfile.
- Automated testing: Integrating automated test stages into the pipeline.
- Configuration management with Ansible: Leszko covers Puppet, Chef, and Ansible as his top three configuration management tools, with a clear preference for Ansible due to its agentless architecture.
- Advanced pipeline patterns: Parallel pipeline steps, database management, and migration strategies within a CD workflow.
- Docker Swarm: Server clustering using Docker swarm mode and the
docker stackcommand for orchestrating multi-container applications. - Zero-downtime deployments and rollbacks: Strategies to keep applications available during updates and recover quickly from failed releases.
Strengths
The book’s greatest asset is its accessibility. Each chapter opens with foundational concepts before advancing to practical implementation, making it usable for readers who are new to containers or CI/CD. The writing style is described as clear and direct, avoiding jargon where possible.
Beyond the basics, Leszko provides real-world examples and case studies to help readers optimize their pipelines rather than simply build them. The goal is for readers to finish the book capable of:
- Deploying applications using Docker Swarm clusters.
- Managing database migrations as part of an automated pipeline.
- Orchestrating and scaling multiple containers in production.
- Implementing rollback strategies to reduce deployment risk.
The book also argues that a well-structured CD pipeline reduces the resources required compared to ad-hoc or manual delivery approaches, a practical selling point for teams making a case for DevOps investment.
Limitations to Be Aware Of
The book’s configuration management coverage is narrow. Leszko focuses almost exclusively on Ansible and gives only brief mentions to Puppet and Chef. SaltStack, which offers both agentless and client-server modes and is a legitimate alternative to Ansible, is not discussed. Teams already using Salt or evaluating it will need to look elsewhere for guidance on integrating it into a Docker/Jenkins pipeline.
Similarly, the orchestration coverage centers on Docker Swarm. Readers who need to understand Kubernetes-based pipelines — which have become the dominant container orchestration platform since this book was published — should supplement this book with Kubernetes-specific resources.
Who Should Read It
This book suits a broad audience:
- Developers who want to understand how their code moves from commit to production.
- IT operations staff building or modernizing delivery pipelines.
- Engineering managers and architects who need a clear picture of CD principles before evaluating tooling choices.
- Teams new to Docker and Jenkins who want a single resource rather than piecing together blog posts and documentation.
Experienced DevOps practitioners who already run Docker and Jenkins in production may find the early chapters too introductory, but the advanced sections on parallel pipelines, zero-downtime deployments, and Swarm clustering may still offer value.
Verdict
Continuous Delivery with Docker and Jenkins is a well-structured, practical resource for teams adopting or maturing their CI/CD practices. Its hands-on approach, clear writing, and progression from basics to advanced topics make it accessible without being superficial. The main caveats are its narrow configuration management coverage and the fact that its orchestration content predates Kubernetes becoming the industry standard. If your stack aligns with Docker Swarm and Jenkins, this book delivers a thorough, actionable foundation.