Chapter 9. Continuous delivery: A perfect fit for Docker principles

 

This chapter covers

  • The Docker contract between dev and ops
  • Taking manual control over build availability across environments
  • Moving builds between environments over low-bandwidth connections
  • Centrally configuring all containers in an environment
  • Achieving zero-downtime deployment with Docker

Once you’re confident that all of your builds are being quality-checked with a consistent CI process, the logical next step is to start looking at deploying every good build to your users. This goal is known as continuous delivery (CD).

In this chapter we’ll refer to your “CD pipeline”—the process your build goes through after it comes out of your “CI pipeline.” The dividing line can sometimes be blurred, but think of the CD pipeline as starting when you have a final image that has passed your initial tests during the build process. Figure 9.1 demonstrates how the image might progress through a CD pipeline until it (hopefully) reaches production.

Figure 9.1. A typical CD pipeline

It’s worth repeating that last point—the image that comes out of CI should be final and unmodified throughout your CD process! Docker makes this easy to enforce with immutable images and encapsulation of state, so using Docker takes you one step down the CD road already.

9.1. Interacting with other teams in the CD pipeline

 
 

9.2. Facilitating deployment of Docker images

 
 
 

9.3. Configuring your images for environments

 
 
 
 

9.4. Upgrading running containers

 
 

Summary

 
 
sitemap

Unable to load book!

The book could not be loaded.

(try again in a couple of minutes)

manning.com homepage
test yourself with a liveTest