CI/CD with Docker Docker Indianapolis 26-May-2015
Aug 13, 2015
2
Who am I?
• Matt Bentley• Solutions Engineer for Docker, Inc.• Been working with Docker since late 2013
3
What do I do?
• Pre-sales, training, architectural review, and solutions delivery
• Playing with anything that has to do with Docker
4
What we will cover today
• How you can start using Docker today• Building software using Docker containers• How to create Docker images• Using Docker in your CI/CD pipeline• Questions
5
How you can start using Docker today
• Getting your feet wet– Use Docker to build your apps– Use Docker for local development and/or testing environments
• Going all in– Start with smaller, new projects– Take time to learn best practices first
6
Building software using Docker containers
• Why?– Reliability– Reproducibility– Know your build environment– Greater flexibility
• How?– Utilize Docker images– Remember that containers are disposable and stateless
7
How to create Docker images
• docker run– Allows for quick iteration and testing– Not easily reproducible
• docker build– Gives you a template for how an image was made (a Dockerfile)– Dockerfiles should live with the code– Easy to reproduce and automate
9
Using Docker in your CI/CD pipeline
• Use your CI service to build your Docker images– Provides consistency– Store your images in a registry
• Use Docker containers in your CI/CD system– Adds flexibility– Easy to control software versions– No more “well it worked on my machine…”