3. March 20, 2013: Docker Launches
https://www.youtube.com/watch?v=wW9CAH9nSLs
4. 15 Months Later: An Incredible Platform and Ecosystem
Official Repos & 14K+ Dockerized Apps
Community
460+ Contributors
250+ Meetups on Docker
2.75M Downloads
6.7K Projects on GitHub
Support
Enterprise Support
Robust Documentation
Implementation, Integration, Training
Network of Partners
The Docker Platform
Docker Engine
Docker Hub
Build, Ship, and Run
Partners
Content
Users
5. 24 Months Later: An Incredible Platform and Ecosystem
Official Repos & 14K+ Dockerized Apps
Community
790+ Contributors
150+ Meetup Groups
100M+ Downloads
50K Projects on GitHub
Support
Enterprise Support
Robust Documentation
Implementation, Integration, Training
Network of Partners
The Docker Platform
Docker Engine
Docker Hub
75K Apps in the Hub
Build, Ship, and Run
Partners
Content
Users
6. We know we’re riding on your shoulders
Thank You to the Giants
• Namespaces (IBM)
• Cgroups (Google)
• LXC tools
• The Linux Kernel
• Git
• SELinux (Red Hat)
• Solaris Zones
• BSD Jails
• +++
7. Thank You Users/Use Cases*
*A small subset of the 100s who are using and/or writing about us
Thanks to those above for talking about their experiences at DockerCon
10. Agenda
Official Repos & 14K + Dockerized Apps
Partners
Content
Users
Community
460+ Contributors
250+ Meetups on Docker
2.75M Downloads
6.7K Projects on GitHub
Support
Enterprise Support
Robust Documentation
Implementation, Integration, Training
Network of Partners
The Docker Platform
Docker Engine
Docker Hub
Build, Ship, and Run
11. ~2000 2014
Long lived Development is iterative and constant
Monolithic and built on a single stack Built from loosely coupled components
Deployed to a single server Deployed to a multitude of servers
Apps Have Fundamentally Changed
12. Static website
Web frontend
User DB
Queue
Analytics DB
Background workers
API endpoint
nginx 1.5 + modsecurity +
openssl + bootstrap 2
postgresql + pgv8 + v8 hadoop + hive +
thrift + OpenJDK
Ruby + Rails + sass +
Unicorn
Redis + redis-
sentinel
Python 3.0 + celery + pyredis + libcurl +
ffmpeg + libopencv + nodejs + phantomjs Python 2.7 + Flask + pyredis +
celery + psycopg + postgresql-client
Development VM
QA Server
Public Cloud
Disaster Recovery
Contributor’s LaptopProduction Servers
MultiplicityofStacks
MultiplicityofHardware
Environments
Production Cluster
Customer Data Center
Doservicesandapps
interactappropriately?
CanImigratesmoothly
andquickly?
The Problem in 2014
13. Results in NxN compatibility nightmare
Static website
Web frontend
Background workers
User DB
Analytics DB
Queue
Development
VM
QA Server
Single Prod
Server
Onsite
Cluster
Public Cloud
Contributor’s
laptop
Customer
Servers
? ? ? ? ? ? ?
? ? ? ? ? ? ?
? ? ? ? ? ? ?
? ? ? ? ? ? ?
? ? ? ? ? ? ?
? ? ? ? ? ? ?
17. Solution: Intermodal Shipping Container
Multiplicityof
Goods
DoIworryabouthow
goodsinteract(e.g.
coffeebeansnextto
spices)
CanItransportquickly
andsmoothly
(e.g.fromboattotrain
totruck)
…in between, can be loaded and
unloaded, stacked, transported
efficiently over long distances, and
transferred from one mode of
transport to another
A standard container that is
loaded with virtually any goods,
and stays sealed until it reaches
final delivery.
19. The Right Approach to Containers Matters
• Separation of concerns
• Automation
• Efficiency
• Broad ecosystem
Images courtesy of PokkO / Shutterstock.com, Lewis Hine - http://www.archives.gov/research_room/research_topics/american_cities/images/american_cities_069.jpg
20. Docker is a shipping container system for code
Static website Web frontendUser DB Queue Analytics DB
Developmen
t VM
QA server Public Cloud Contributor’
s laptop
Multiplicityof
Stacks
Production
Cluster
Customer
Data Center
Doservicesand
appsinteract
appropriately?
CanImigrate
smoothlyand
quickly
…that can be manipulated using
standard operations and run
consistently on virtually any
hardware platform
An engine that enables any
payload to be encapsulated as
a lightweight, portable, self-
sufficient container…
21. …or put more simply
Static website Web frontendUser DB Queue Analytics DB
Developmen
t VM
QA server Public Cloud Contributor’
s laptop
Multiplicityof
Stacks
Production
Cluster
Customer
Data Center
Doservicesand
appsinteract
appropriately?
CanImigrate
smoothlyand
quickly
Operator: Configure Once,
Run Anything
Developer: Build Once,
Run Anywhere (Finally)
22. An Open Platform to Build, Ship, and Run Distributed Applications
26. An Open Platform…
API
Engine Hub
open source software at the heart
of the Docker platform
cloud-based platform services for distributed
applications
API
27. An Open Platform…
Any App
Any infrastructure
• Physical
• Virtual cloud
+ 75K apps
+ 50K projects
API
Engine Hub
cloud-based platform services for distributed
applications
API
open source software at the heart
of the Docker platform
28. …to Build, Ship, and Run
Build Ship
Run
Dev
QA
Source
Staging
Physical
Virtual
Cloud
Infrastructure Management
Infrastructure Management
DockerFile
Source Code
Repository
TESTTEST
TESTTEST
TEST
GCE RAX IBM
Mac/Win Dev
Machine
Boot2Docker
Docker
Analytics
DB
Prod Machine
Linux OS
DockerDocker
++
Users Collab
Provenance Policy
Docker Hub
Registries
Public Curated Private
Docker Hub API
Third Party Tools
Prod Machine
Linux OS
DockerDocker
Prod Machine
Linux OS
DockerDocker
VM
DockerDocker
VM
DockerDocker
VM
DockerDocker
QA Machine
Linux OS
DockerDocker
30. • Faster delivery of your applications
• Deploying and scaling more easily
• Achieving higher density and running more
workloads
So to finish up, Docker enables
31. An Open Platform to Build, Ship, and Run Distributed Applications