Docker: the road ahead


Published on

Solomon Hykes at Dockercon 14 presenting Docker's philosophy and roadmap, and introducing new components of the platform.

Published in: Engineering, Internet, Technology
No Downloads
Total Views
On Slideshare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

Docker: the road ahead

  1. 1. Docker: the road ahead
  2. 2. So... what do we do now? aka
  3. 3. Why are we here?
  4. 4. We have a blueprint
  5. 5. “My thought in the 70s was that the Internet was a really good scalable design, and we should make a virtual internet of virtual machines that could be cached by the hardware machines. It’s really too bad this didn’t happen Alan Kay
  6. 6. Upgrade the Internet time to
  7. 7. We have the technology bandwidth, storage, compute, sandboxing, crypto, compression, copy-on-write filesystems, paxos/raft...
  8. 8. We have standard interfaces Time to fix this!
  9. 9. It’s getting people to agree on something The real value of Docker is not technology
  10. 10. 1. Packaging and distribution
  11. 11. 2. Sandboxing
  12. 12. libcontainer A standard interface to OS sandboxing namespaces, cgroups, capabilities, netlink, selinux, apparmor Core Docker component... But also usable standalone
  13. 13. libcontainer A standard interface to OS sandboxing A few announcements.
  14. 14. libcontainer Now a standalone project #libcontainer on Freenode
  15. 15. libcontainer Contributing SELinux and systemd integration Welcome Dan and Alex!
  16. 16. libcontainer Joining as core maintainers Welcome Victor and Rohit!
  17. 17. libcontainer Contributing C implementation and OpenVZ support Welcome Pavel and John!
  18. 18. libcontainer collaborating on unified cgroup interface Welcome Serge! & LXC
  19. 19. libcontainer Join the fun! #libcontainer on Freenode
  20. 20. 3. Networking
  21. 21. libchan a lightweight communication protocol for distributed systems
  22. 22. libchan Like Go channels over the network Simple message passing Synchronization without sharing state Raw socket passing: channels as gateways to any other protocol Nesting: channels can send channels
  23. 23. libchan Available transports: SPDY/TLS, websocket, raw TCP, high-perf unix sockets (with fd passing), in-memory go channels. Designed to be simple and portable
  24. 24. libchan A standard communication layer for Docker: internal components, plugins, inter-container communication.
  25. 25. libchan
  26. 26. 4. Orchestration
  27. 27. Docker API
  28. 28. Shipper
  29. 29. Shipper Mesosor
  30. 30. Shipper or Mesos or Coreos/FleetGeardor
  31. 31. Shipper or Mesos or Coreos/FleetGeardor or or orConsul Helios Centurion
  32. 32. Shipper or Mesos or Coreos/FleetGeardor or or orConsul Helios Centurion EC2 Rackspace GCE Orchard Tutum
  33. 33. Shipper or Mesos or Coreos/FleetGeardor or or orConsul Helios Centurion EC2 Rackspace GCE Orchard Tutum
  34. 34. libswarm A minimalist toolkit to compose network services
  35. 35. libswarm A standard interface to combine and organize services in a distributed system. Compose complex architectures from standard building blocks Avoid vendor lock-in by swapping any service out with another Pick services from a built-in library, or write your own with a simple API.
  36. 36. libswarm Community-contributed adapters: Docker server & client Mesos Atomic / geard Fleet / etcd Orchard Google cloud Rackspace cloud Shipyard TLS tunnel
  37. 37. libswarm First-class Docker compatibility If you develop on libswarm, we guarantee compatibility with the Docker ecosystem.
  38. 38. libswarm
  39. 39. libcontainer libchan libswarm
  40. 40. What’s next?
  41. 41. 5. Identity
  42. 42. 6. Authorization
  43. 43. Coming soon! “But I need it naow!” Come say hi, maybe we can hook you up
  44. 44. Let’s go build it! Happy hacking! Drawings by @laurelcomics #docker-dev on Freenode
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.