Environment parity
Quick on-boarding for new devs
Continuous Integration and Testing
Automated Production deployment
DOCKERFILE
DOCKER COMPOSE
DOCKER CLOUD
DEPLOYMENT
composed of layers
base for your containers
read only
get basic images from registry
Layer
Layer
everywhere, only changes to the previous layer are considered
container is an ephemeral instance of an IMAGE
Layer
Layer
Temporary Container Data
data persistence
best practice is data volume services (see compose)
Layer
Layer
Temporary Container Data
Volume #1
linked at runtime into container
runs on linux not unix
on macOS you need a VM
use Docker for Mac to get xhyve power
on *buntu kernel >3.10 install via apt-get
Goes into GIT!
Docker Compose
Consistent workflow for developers even for single service projects
CONTINIOUS INTEGRATION
CI Service (e.g. Docker Cloud) pulls from git and runs test (almost ready)
CONTINUOUS DEPLOYMENT
to staging systems
CONTINUOUS DELIVERY
to production systems and the client
Dockerize your project!