Patrick Chanezon, Docker Inc.
@chanezon
With slides from @jpetazzo @timpark @vieux @tnachen @volkerw IBM @borja_burgos
French
Polyglot
Platforms
San Francisco
Developer Relations
@chanezon
1995 2015
History of containerization
• 1960’s mainframe
• 1990’s hardware virtualization
• 1990’s OS virt precursors: BSD Jails, Solaris zones
• 2006 Cloud IaaS
• 2009 platform virtualization (PaaS)
• 2013 Docker
See @bcantrill’s deck http://www.slideshare.net/bcantrill/docker-and-the-future-of-containers-in-production
7
Happy birthday!
“Write Once, Run everywhere”
Java marketing circa 1998
Why Docker success now?
• Cloud adoption
• Portability
• Hybrid
• Devops
Cloud Market
PublicHybridPrivate
IT Pros Devops DevelopersArchitects
It’s an ecosystem
Linux Container Ecosystem
Isolation using Linux kernel features
namespaces
 pid
 mnt
 net
 uts
 ipc
 user
cgroups
 memory
 cpu
 blkio
 devices
Docker now
 A platform to build, ship, and run any app, anywhere
 docker engine
 docker hub
 docker-machine
 docker-compose
 docker-swarm
 kitematic
Docker for developers
https://registry.hub.docker.com/_/java/
docker-compose: running multiple containers
 Run your stack with one command: docker-compose up
 Describe your stack with one file: docker-compose.yml
web:
build: .
command: python app.py
ports:
- "5000:5000"
volumes:
- .:/code
links:
- redis:redis
redis:
image: redis
docker-machine
docker-machine create -d azure 
—azure-subscription-id="c4f51be3-784c-xxx-7c50ad9e1b7c" 
--azure-subscription-cert="/Users/pat/.ssh/docker-azure-
cert.pem" 
--azure-location="East US" 
--azure-size=Small 
--azure-username="pat" 
pat-docker-machine-n
Docker Hub
Docker Hub Enterprise
Kitematic
Deploy almost anywhere
Docker, the community
 >700 contributors
 ~20 core maintainers
 >40,000 Dockerized projects on GitHub
 >60,000 repositories on Docker Hub
 >25000 meetup members,
>140 cities, >50 countries
 >2,000,000 downloads of boot2docker
Docker Inc, the company
 Headcount: ~130
 Revenue:
 t-shirts and stickers featuring the cool blue whale
 SAAS delivered through Docker Hub
 Support & Training
 soon: Docker Hub Enterprise, behind the firewall
Client-Server
26
27
Web
28
Cloud - Devops
Separation of concerns:
Dave the Developer
 Inside my container:
 my code
 my libraries
 my package manager
 my app
 my data
Separation of concerns:
Oscar the Ops guy
 Outside the container:
 logging
 remote access
 network configuration
 monitoring
Linux Container Ecosystem
Docker Swarm
Docker
CLI
Docker
CLI
Docker
CLI
Docker Engine
us-west us-east
Docker
CLI
Docker
CLI
Docker Swarm
Swarm
Swarm in a nutshell
 Docker REST API (>85%)
 Resource management (CPU, Mem, Networking)
 Advanced scheduling with constraints and affinities
 Multiple Discovery Backends (hub, etcd, consul, zookeeper)
 TLS: Encryption & Authentication
Swarm beta integrations
 Fully integrated with Machine
 Partially integrated with Compose
 Mesos integration has started in collaboration with
Mesosphere.
Swarm load balancing: interlock
https://github.com/ehazlett/interlock/tree/master/plugins/haproxy
Kubernetes
host-1
Container
host-2 host-3 host-4 host-n
…
Container
Container
Container
Container
ContainerContainer
Container
Container
Kubernetes
host-1 host-2 host-3 host-4 host-n
…
Frontend
Worker
my_app pod
MyAppMyApp MyApp
Replication Controller
3
Kubernetes
host-1 host-2 host-3 host-4 host-n
…
Frontend
Worker
my_app pod
MyAppMyApp MyApp
Replication Controller
3
Kubernetes
host-1 host-2 host-3 host-4 host-n
…
MyAppMyApp MyApp
Replication Controller
Pod Pod
Pod
Pod
PodPod
Pod
Pod
Replication Controller
Kubernetes
host-1 host-2 host-3 host-4 host-n
…
MyApp
staging
MyApp
staging
MyApp
staging
MyApp
prod
MyApp
prod
MyApp
prod
MyApp
prod
MyApp
prod
MyApp Production Service
{ environment: prod }
MyApp Staging Service
{ environment: staging }
Labels and Services
Cloud Foundry Diego & Lattice
cf docker-push my-app cloudfoundry/lattice-app
56
Customer Managed
Service Provider Managed
IBM SoftLayer
We listened. Now we’re evolving to become even more flexible.
Capabilities in Bluemix now span PaaS and IaaS and can be delivered as a public,
dedicated, or on-premises* implementation.
Infrastructure as
a Service
Code
Data
Runtime
Middleware
OS
Virtualization
Servers
Storage
Networking
Code
Data
Runtime
Middleware
OS
Virtualization
Servers
Storage
Networking
Platform as
a Service
*Bluemix Local coming Summer 2015
Built on open
technologies:
Tutum: The Container Platform
Dev Deploy ManageBuild
CI CD
Code
repo
Image
repo
Monitoring
Logging
Scaling
Networking
Storage
Service Discovery
Composability
Security
Hosts Public Cloud Private CloudAcross: Environments
TUTUM CONTAINER PLATFORM
Public Cloud
Test
Orchestration
Flocker
Weave
Powerstrip
Prototyping Docker Plugins
https://clusterhq.com/blog/powerstrip-prototype-docker-extensions-today/
Fire up your first container today!
Ride the Whale!
Learning
• http://docs.docker.com/
• http://slideshare.net/chanezon
• https://github.com/chanezon/azure-linux
We’re hiring!
https://www.docker.com/company/careers/
10
3
References
• talk about cloud platforms: Managing complexity in giant systems http://www.slideshare.net/chanezon/tackling-
complexity-in-giant-systems-approaches-from-several-cloud-providers
• talk about Devops, the Microsoft Way
http://www.slideshare.net/chanezon/devops-the-microsoft-way
• MS Open Tech https://msopentech.com/ Blog, VM Depot
• P@ Linux on Azure pages https://github.com/chanezon/azure-linux/
• Tim’s CoreOS tutorial https://github.com/timfpark/coreos-azure
• Tim’s Deis documentation
• @jpetazzo’s presentations http://www.slideshare.net/jpetazzo/
• @bcantrill’s deck http://www.slideshare.net/bcantrill/docker-and-the-future-of-containers-in-production
• @vieux deck on Swarm
• @htchen deck on Mesos + Swarm https://speakerdeck.com/tnachen/docker-swarm-plus-mesos
Docker Devoxx UK - Never mind the bollocks here's the Linux Containers
Docker Devoxx UK - Never mind the bollocks here's the Linux Containers

Docker Devoxx UK - Never mind the bollocks here's the Linux Containers

Editor's Notes