Agenda
- Overview
- Basic concepts
- Architecture
- VMs vs Containers
- Docker machine
- Docker Hub
- Advanced Tools
- Workflow
- DEMO
The Challenge
Deployment Challange
Cargo Transport Pre-1960
The same probelm
Solution: Intermodal Shipping Container
Docker is a Container System for Code
Deployment Matrix
Common Environment
Dev QA Ops
Why Developers Care
Build once and run anywhere:
- A clean, secure and predictiable environment for apps
- No worries about missing dependencies
- Automate testing and packaging
- Reduce/eliminate concerns about compatibility on different platforms
Why Operations Care
Configure once and run anything:
- Make the entire lifecycle more efficient, consistent, and repeatable.
- Eliminate inconsistencies between development, test, production, and customer environments.
- Speed and reliability of continuous deployment and continuous integration systems.
- Significant performance, lower costs, deployment, and portability (in comparision to VMs).
Architecture
VMs vs Containers
Why are Docker Containers Lightweight?
What are the Basics of a Docker System?
Changes and Updates
hub.docker.com
Advanced Tools
- Docker Compose: a tool for defining and running multi-container Docker applications
- Docker Swarm: native clustering tool which turns a pool of Docker hosts into a single, virtual Docker host
- Docker Cloud: deploying node clusters and sevices to cloud service providers (AWS, DigitalOcean, etc...)
Possible Workflow
Demo Time