Docker: the road ahead

Post on 23-Aug-2014

12.750 views 0 download

Tags:

description

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

Transcript of Docker: the road ahead

Docker: the road ahead

So... what do we do now?aka

Why are we here?

We have a blueprint

“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

Upgrade the Internettime to

We have the technologybandwidth, storage, compute, sandboxing,

crypto, compression, copy-on-write filesystems, paxos/raft...

We have standard interfaces

Time to fix this!

It’s getting people to agree on something

The real value of Docker is not technology

1. Packaging and distribution

2. Sandboxing

libcontainerA standard interface to OS sandboxing

namespaces, cgroups, capabilities, netlink, selinux, apparmor

Core Docker component...But also usable standalone

libcontainerA standard interface to OS sandboxing

A few announcements.

libcontainer

github.com/docker/libcontainer

Now a standalone project

#libcontainer on Freenode

libcontainer

Contributing SELinux and systemd integration

Welcome Dan and Alex!

libcontainer

Joining as core maintainers

Welcome Victor and Rohit!

libcontainer

Contributing C implementation and OpenVZ support

Welcome Pavel and John!

libcontainer

collaborating on unified cgroup interface

Welcome Serge!

& LXC

3.Networking

libchana lightweight communication

protocol for distributed systems

libchanLike 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

libchanAvailable transports:SPDY/TLS,websocket,raw TCP,high-perf unix sockets (with fd passing),in-memory go channels.

Designed to be simple and portable

libchan

A standard communication layer for Docker:

internal components, plugins,inter-container communication.

4. Orchestration

Docker API

Shipper

Shipper Mesosor

Shipper or Mesos or Coreos/FleetGeardor

Shipper or Mesos or Coreos/FleetGeardor

or or orConsul Helios Centurion

Shipper or Mesos or Coreos/FleetGeardor

or or orConsul Helios Centurion

EC2 Rackspace GCE Orchard Tutum

Shipper or Mesos or Coreos/FleetGeardor

or or orConsul Helios Centurion

EC2 Rackspace GCE Orchard Tutum

libswarmA minimalist toolkit

to compose network services

libswarmA 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.

libswarmCommunity-contributed adapters:

Docker server & clientMesos

Atomic / geardFleet / etcd

OrchardGoogle cloud

Rackspace cloudTutum.comShipyard

TLS tunnel

libswarmFirst-class Docker compatibility

If you develop on libswarm, we guarantee compatibility with the

Docker ecosystem.

libcontainer libchan

libswarm

What’s next?

5. Identity

6. Authorization

Coming soon!

“But I need it naow!”Come say hi, maybe we can hook you up

Let’s go build it!

Happy hacking!Drawings by @laurelcomics

#docker-dev on Freenode