Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

DockerCon SF 2015: Keynote Day 1

18,352 views

Published on

Slides from the DockerCon Day 1 Keynote

Published in: Technology
  • Be the first to comment

DockerCon SF 2015: Keynote Day 1

  1. 1. DockerCon Day 1
 Welcome

  2. 2. Our mission is to build tools of mass innovation
  3. 3. Billions of creative people Incredible technology
  4. 4. Mass innovation
  5. 5. What is the biggest innovation multiplier today?
  6. 6. What is the biggest innovation multiplier today? PROGRAMMING
  7. 7. New hardware can do incredible things Millions of programmers Make it programmable Mass innovation
  8. 8. What new hardware could do incredible things if made programmable?
  9. 9. The Internet is pretty cool...
  10. 10. and getting lots of upgrades! Servers, phones, TVs, cars, sensors, drones, homes, watches, maps, payment systems, scientific equipment, virtual worlds, data banks, crypto- currencies... The Internet is pretty cool...
  11. 11. Could we make the Internet...
  12. 12. Could we make the Internet... PROGRAMMABLE?
  13. 13. App App App App App App App App App App App Eager developer The Internet Software walled gardens
  14. 14. App App App App App App App App App App App Happy developer The Internet Open software layer
  15. 15. For the next 5 years we’re going to build a software layer to make the Internet programmable
  16. 16. How do we get there? 4 big goals.
  17. 17. Goal 1 Reinvent the programmer’s toolbox
  18. 18. Building distributed applications is too hard, because the tools are not adequate.
  19. 19. Let’s give programmers a toolbox designed for distributed applications. Developer experience matters!
  20. 20. 1. Choose one fundamental problem. 2. Solve it in the simplest possible way. 3. Repeat. Incremental Revolution
  21. 21. Problem 1: runtime “How do I run my code repeatably on different machines?”
  22. 22. Docker container runtime
  23. 23. Problem 1: runtime Problem 2: packaging & distribution “How do I ship my code across many different machines?”
  24. 24. Docker distribution tools
  25. 25. Problem 1: runtime Problem 2: packaging & distribution Problem 3: service composition “How do I organize my application in scalable services?”
  26. 26. Docker Compose
  27. 27. Problem 1: runtime Problem 2: packaging & distribution Problem 3: service composition Problem 4: machine management “How do I deploy many machines to run my code?”
  28. 28. Docker Machine
  29. 29. Problem 1: runtime Problem 2: packaging & distribution Problem 3: service composition Problem 4: machine management Problem 5: clustering “How do I stop worrying about individual machines?”
  30. 30. Docker Swarm
  31. 31. This is what incremental revolution looks like.
  32. 32. “What problems are you solving next?”
  33. 33. https://docker.com/experimental Docker experimental releases
  34. 34. experimental
  35. 35. Problem 1: runtime Problem 2: packaging & distribution Problem 3: service composition Problem 4: machine management Problem 5: clustering Problem 6: networking “How do I securely connect my containers across machines?”
  36. 36. The network should be part of the application, not the other way around.
  37. 37. SocketPlane + Earlier this year...
  38. 38. 3 months later...
  39. 39. Docker Network Introducing experimental
  40. 40. Multi-host networking out of the box experimental
  41. 41. Micro-segmentation is built-in experimental Assemble virtual networks into any topology, enforce security policies, insert probes and firewalls.
  42. 42. experimental Don’t modify your application, Don’t rip out your infrastructure. Built on industry standards
  43. 43. experimental Do you use DNS? Congratulations, you support Docker service discovery. Standardized service discovery
  44. 44. experimental 11 community-contributed backends And more on the way. weave calico consul etcd zookeeper midokuraciscoazure nuagenetworks
  45. 45. Demo time! experimental
  46. 46. Problem 1: runtime Problem 2: packaging & distribution Problem 3: service composition Problem 4: machine management Problem 5: clustering Problem 6: networking Problem 7: extensibility “How do I add my own tools to the toolbox?”
  47. 47. Docker Plugins Introducing experimental
  48. 48. 4 new extension points Network plugins, Volume plugins, Scheduler plugins, Service discovery plugins. ... and more to come. experimental
  49. 49. experimental No patches or restarts needed. Dynamic loading
  50. 50. experimental Use different plugins for different applications. Multi-tenant
  51. 51. experimental if your application works in Docker, it already supports every plugin. No lock-in
  52. 52. experimental Developed with the ecosystem WeaveWorks A very special thank you to:
  53. 53. There is no platform without ecosystem
  54. 54. Deepak Singh Sr Manager, Amazon Container Service
  55. 55. Goal 1 Build better plumbing
  56. 56. To build a developer platform, we need infrastructure plumbing. Lots of it.
  57. 57. Infrastructure plumbers around the World are improving the Internet’s software infrastructure.
  58. 58. The principles of software plumbing THOU SHALT I Re-use and improve existing plumbing. II Make new plumbing easy to re-use and improve. III Follow the unix principles: make small simple tools, not big complicated ones. IV Define standard interfaces for assembling larger systems.
  59. 59. We have re-used a lot of plumbing to build Docker. Linux LXC selinux apparmor aufs lvm zfs btrfs virtualbox iptables openssl tar git raft serf xen kvm openvzpaxos ssh Go ... jenkins
  60. 60. We have also built a lot of our own. service discovery networking os containers authentication storage logging build content distribution code signature master election load balancing scheduling testing code review 50% of Docker’s source code is plumbing!
  61. 61. The Docker Plumbing Project Introducing Let’s spin it all out!
  62. 62. We need your help! #dockerplumbing
  63. 63. SECURITY Plumbing for....
  64. 64. Trusted, cross-platform content distribution on the Internet is an unsolved problem. “Is curl | sh really the best we can do?”
  65. 65. Notary Introducing experimental A trusted publishing system for any content.
  66. 66. experimental Distribute any content: source, build artifacts, packages, containers, vm images, documentation... Platform-agnostic
  67. 67. experimental Reliable updates, proof of origin, resistant to untrusted transport, survivable key compromise. Build on industry- leading research
  68. 68. experimental Distribute any content: source, build artifacts, packages, containers, vm images, documentation... Build on industry- leading research
  69. 69. A quick demo of Notary
  70. 70. OS CONTAINERS Plumbing for...
  71. 71. It’s just plumbing... but it’s popular plumbing! Containers are 5% of Docker’s code
  72. 72. Introducing RunC The universal container runtime All of Docker’s 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
  73. 73. runC Introducing A universal runtime for OS containers https://runc.io
  74. 74. Just the runtime and nothing else Battle-tested and production-ready Supports all security features of Linux: selinux, apparmor, cgroups, seccomp, cap-drop.. Supports user namespaces Supports live migration Microsoft is contributing Windows support Arm support underway Intel is contributing DPDK, Secure enclave Defines a standard, portable runnable format Usable from the command-line or programmatically
  75. 75. Goal 3. Promote open standards
  76. 76. It’s getting people to agree on something The real value of Docker is not technology
  77. 77. “You are the de facto standard. Now it’s your responsibility to make it a proper standard”.
  78. 78. What is a proper standard?
  79. 79. 1. A formal specification “Make it easy for anyone to write their own implementation” A proper standard needs...
  80. 80. Introducing OCF: a universal intermediary format for OS containers Supports all hardware architectures and OS
  81. 81. 1. A formal specification 2. Independent governance “Don’t tie the standard to a single company” A proper standard needs...
  82. 82. OPEN CONTAINER PROJECT Introducing in collaboration with
  83. 83. 1. A formal specification 2. Independent governance 3. A neutral reference implementation “The best standards start with rough consensus and working code” A proper standard needs...
  84. 84. Docker donates runC to the Open Container Project runC is now the OCF reference implementation
  85. 85. 1. A formal specification 2. Independent governance 3. A neutral reference implementation 4. Support from a broad coalition “Your standard must present a majority of the market” A proper standard needs...
  86. 86. OPEN CONTAINER PROJECT founding members:
  87. 87. OPEN CONTAINER PROJECT founding members:
  88. 88. 1. A formal specification 2. Independent governance 3. A neutral reference implementation 4. Support from a broad coalition 5. An open door to fresh ideas “Many people have been thinking about this. Hear them out.” A proper standard needs...
  89. 89. OPEN CONTAINER PROJECT welcomes the APPC maintainers as founding members
  90. 90. Promote open standards
  91. 91. Build better plumbing
  92. 92. Reinvent the programmer toolbox.
  93. 93. Help organizations solve real-world problems in unique ways.
  94. 94. Happy hacking!
  95. 95. WIFI FOR EVERYONE! NETWORK: DockerCon15 PASSWORD: mobydock
  96. 96. DOWNLOAD THE MOBILE APP: guidebook.com/app/DockerCon
  97. 97. ASK THE EXPERTS • MONDAY & TUESDAY - 11:00AM - 5:00PM CONTRIBUTOR • MONDAY & TUESDAY - 11:00AM - 5:00PM
  98. 98. BUILD YOUR OWN STACK AT THE SPONSOR BOOTHS • MONDAY BREAK - 11:00AM - 11:45AM
  99. 99. CONFERENCE PARTY • STARTS AT 7 PM ON MONDAY EVENING • BUSES WILL DEPART FROM MARRIOTT AND WILL RETURN BACK TO HOTEL STARTING AT 8:45PM • THANKS INTEL FOR SPONSORING!

×