Continuous Delivery with Docker and Deis

Josh Mize

@jgmize

Docker

Docker Architecture

Containers

Images

Union Filesystem

Filesystems

  • aufs
  • btrfs
  • overlayfs

Registry

hub.docker.com

Deis

Open Source PaaS

  • Docker
  • CoreOS
  • Heroku-inspired workflow

CoreOS

Continuous Delivery

Process Overview

Jenkins

Deployment Example

  1. Dev opens pull request
  2. Jenkins builds docker image based on branch and runs unit tests in docker container
  3. Another dev reviews and merges to master
  4. Jenkins builds new docker image, runs unit tests
  5. Jenkins uses "deis pull" to deploy to dev and l10n
  6. Jenkins runs acceptance tests against dev
  7. Jenkins deploys to prod using "deis pull" of same image

Continuous Delivery with Docker and Deis

By jgmize

Continuous Delivery with Docker and Deis

  • 1,538