Transcript of Docker Platform and Ecosystem
- 1. Patrick Chanezon, Docker Inc. @chanezon The Docker Platform
With slides from @jpetazzo @timpark @vieux @tnachen @volkerw IBM
@borja_burgos and Ecosystem Ride the Whale!
- 2. French Polyglot Platforms Software Plumber San Francisco
Developer Relations @chanezon
- 3. Dreams of my childhood
- 4. The Singularity in a galaxy far far away
- 5. Moores Law hardware only!
- 6. 1995 2015
- 7. Our mission is to build tools of mass innovation
- 8. Billions of creative people
- 9. Incredible new technology Billions of creative people
- 10. Incredible new technology Billions of creative people
- 11. Incredible new technology Billions of creative people
- 12. Incredible new technology Billions of creative people Mass
innovation
- 13. What is the biggest innovation multiplier today?
- 14. What is the biggest innovation multiplier today?
Programming.
- 15. New hardware can do incredible things Millions of
programmers Mass innovation Make it programmable
- 16. What new hardware could do incredible things if made
programmable?
- 17. THE INTERNE T Millions of programmers Mass innovation Make
it programmable
- 18. Internet Servers Desktop s Phones Cars Houses Drones
Network equipment Public transit TVs Industria l facilities
Scientific instrument s Financial system
- 19. Internet Servers Desktop s Phones Cars Houses Drones
Network equipment Public transit TVs Industria l facilities
Scientific instrument s Financial system Programmers Must
program!!!!
- 20. Internet Servers Desktop s Phones Cars Houses Drones
Network equipment Public transit TVs Industria l facilities
Scientific instrument s Financial system Androi d iOS AWS Raspberry
pi Cloudfoundr y Openstac k Microsof t Web Herok u ... App App App
App App App App App App App App App App App App App App
Programmers
- 21. Internet (hardware layer) Servers Desktop s Phones Cars
Houses Drones Network equipment Public transit TVs Industria l
facilities Scientific instrument s Financial system Programmers
Internet (software layer) App App App App App App App App App App
App App App App App App App App App App App App App App App App App
App
- 22. Internet (hardware layer) Servers Desktop s Phones Cars
Houses Drones Network equipment Public transit TVs Industria l
facilities Scientific instrument s Financial system Programmers App
App App App App App App App App App App App App App App App App App
App App App App App App App App App App a software layer to program
the internet
- 23. Business opportunity
- 24. as Boromir would say
http://blogs.gartner.com/richard-watson/ok-get-dockers-great/
- 25. Low MTBIAMSH MTBIAMSH (Mean Time Between Idea And Making
Stuff Happen)
- 26. Agility == $$
- 27. 25 Mainframe
- 28. Client-Server 26
- 29. 27 Web
- 30. 28 Cloud - Devops
- 31. Docker in the cloud market
- 32. Cloud Market PublicHybridPrivate IT Pros Devops
DevelopersArchitects
- 33. History of containerization 1960s mainframe 1990s hardware
virtualization 1990s OS virt precursors: BSD Jails, Solaris zones
2006 Cloud IaaS 2009 platform virtualization (PaaS) 2013 Docker See
@bcantrills deck
http://www.slideshare.net/bcantrill/docker-and-the-future-of-containers-in-production
- 34. 7
- 35. Happy birthday!
- 36. Why Docker success now? Cloud adoption Portability Hybrid
Devops
- 37. Its an ecosystem
- 38. Linux Container Ecosystem
- 39. RancherOS
- 40. Docker
- 41. Isolation using Linux kernel features namespaces pid mnt
net uts ipc user cgroups memory cpu blkio devices
- 42. Image layers
- 43. Docker now
- 44. Docker for developers
https://registry.hub.docker.com/_/java/
- 45. 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
- 46. Whats new in 1.3.0? Performance and stability improvements
Lots more config option support New feature (experimental!): Smart
Recreate Only recreate containers whose configuration has been
changed $ docker-compose up --x-smart-recreate Will eventually be
the default behaviour
- 47. docker-machine docker-machine create -d
azureazure-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
- 48. What is new in 0.3.0? Generic Driver -Provision any host
with SSH Engine and Swarm Options -Specify any swarm or engine
option Swarm Provisioning out of experimental Custom Engine and
Swarm Versions -Specify stable/test for engine -Specify image for
Swarm
- 49. Docker Hub
- 50. 150,000 repos 500+ million pulls 240,000 users - 00 00 00
00 3/22/13 8/7/13 12/21/13 5/6/14 9/19/14 2/2/15 - 40,000 80,000
120,000 160,000 4/29/13 9/9/13 1/20/14 6/2/14 10/13/14 2/23/15 -
125,000,000 250,000,000 375,000,000 500,000,000 5/6/13 8/26/13
12/16/13 4/7/14 7/28/14 11/17/14 3/9/15 2014 2015 2014 2015 2014
2015
- 51. Docker Hub Dev & QA ColleaguesDevelopers QA Build &
Ship
- 52. Docker Hub Faster Pulls 60% Less Bandwidth 0% 25% 50% 75%
100% v1 v2 0% 25% 50% 75% 100% v1 v2 80% Fewer Requests
- 53. Docker Hub Dashboard: 2.0x Speedup Search: 1.6x Speedup 0
,000 ,000 ,000 ,000 Current New 0 2,250 4,500 6,750 9,000 Current
New
- 54. Docker Hub More Reliable
- 55. Docker Trusted Registry
- 56. On-premise registry server LDAP/Active Directory
integration Role-based access control Audit & events logging
Easy deploy, upgrade, & rollback
- 57. Kitematic
- 58. Deploy almost anywhere
- 59. 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
- 60. 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
- 61. Its all about Devops
- 62. 28 Dev / Ops
- 63. Separation of concerns: Sylvester the Developer Inside my
container: my code my libraries my package manager my app my
data
- 64. Separation of concerns: Robert the Ops guy Outside the
container: logging remote access network configuration
monitoring
- 65. Networking
- 66. Container Network Model
- 67. M 1 M 2 M 3 C 2 C 1 C 3 C 4 C 6 C 5 Network 1 Network
2
- 68. Plugins
- 69. Docker Plugins Developed with the community. Mesosphere,
WeaveWorks, ClusterHQ, Glider Labs, 4 new extension points:
Networking Service discovery Storage volumes Scheduling More
extension points coming soon.
- 70. Docker Plugins Batteries included but removable: default
implementation is a plugin too! Dynamically loaded: extend Docker
without patching or restarting it Multi-tenant: different apps can
use different plugins No lock-in: if your application works in
Docker, it already supports every plugin.
- 71. Swarm Scheduler plugins Engine Volumes plugins Network
plugins Service discovery plugins Engine Volumes plugins Network
plugins Service discovery plugins mesos flockerglusterfs
weavecalico consuletcdzookeeper
midokuraciscoazurenuagenetworks
- 72. Weave
- 73. Flocker
- 74. Orchestration
- 75. Docker Swarm
- 76. Docker CLI Docker CLI Docker CLI Docker Engine
- 77. us-west us-east Docker CLI Docker CLI Docker Swarm
Swarm
- 78. Swarm beta integrations Fully integrated with Machine
Partially integrated with Compose Mesos integration has started in
collaboration with Mesosphere.
- 79. Swarm load balancing: interlock
https://github.com/ehazlett/interlock/tree/master/plugins/haproxy
- 80. New in Swarm
- 81. Orchestration summary Docker Swarm: Docker-style, provision
with docker-machine Mesos: Twitter-style, aligned with Swarm Fleet:
CoreOS-style, simple Kubernetes: Google-style, heavy-duty, many
concepts Deis: Heroku-style workflow Cloud Foundry Diego, IBM
BlueMix: PaaS -> orchestration Also: Joyent, Tutum, Flynn
- 82. Plumbing
- 83. The Docker toolbox is built on plumbing. Lots of it. Linux
LXC selinux apparmor aufs lvm zfs btrfs virtualbox iptables openssl
tar git raft serf xenkvm openvz paxos ssh Go
- 84. The Docker community created its own plumbing... Lots of
it. 50% of Dockers source code is plumbing.
- 85. Service discovery networking os containers authentication
storage logging build content distribution code signature master
election code signatureload balancing scheduling testing code
review The Docker community created its own plumbing... Lots of
it.
- 86. Thou shall... 1. re-use and improve existing plumbing 2.
make new plumbing easy to re-use and improve 3. Follow the unix
principles: make small simple tools, not big complicated ones 4.
define standard interfaces for assembling larger systems The
principles of software plumbing
- 87. Docker is spinning out its plumbing All of it.
- 88. We need your help!
- 89. SECURIT Y Plumbing for....
- 90. Secure content distribution on the Internet is an unsolved
problem.
- 91. Introducing Notary Lets stop using curl|sh Trusted
collections for any content Transport-agnostic Reliable updates,
proof of origin, resistant to untrusted transport, survivable key
compromise Build on industry-leading standards and research
- 92. OS CONTAINERS Plumbing for...
- 93. Its just plumbing... but its popular plumbing! Containers
are 5% of Dockers code
- 94. Introducing RunC The universal container runtime All of
Dockers container management plumbing and nothing else Super
lightweight Battle-tested and production-ready Supports all
security features of Linux: selinux, apparmor, cgroups, seccomp,
namespaces, cap-drop.. Supports user namespaces Supports live
migration Microsof is contributing Windows support Arm support
underway Intel is contributing DPDK, Secure enclave Defines a
standard, portable runnable format Usable from the command-line
https://runc.io
- 95. Open Standards
- 96. You are the de facto standard. Make it a proper
standard!
- 97. (logo slide)
- 98. Fire up your first container today! Ride the Whale!
- 99. Learning http://docs.docker.com/
http://slideshare.net/chanezon
https://github.com/chanezon/azure-linux
- 100. Were hiring! https://www.docker.com/company/careers/
- 101. Q&A