After our initial progress report, we are excited to announce a new networking system for Docker Engine. Containers can now communicate with each across hosts and configuring networking has been made much more flexible. What’s more, this functionality is entirely pluggable with networking drivers, so you can choose a networking system that best suits your infrastructure without locking your app into any particular system.
How it works
You can now create a network and attach containers to it. This can be useful for segmenting your containers, applying policies or even just for keeping your containers organised.
docker network create foo docker run -itd --publish-service=myapp.foo debian:latest
How do you use your networks? Please let us know by joining the discussion on #docker-network on Freenode.
Because one Docker Engine is never enough we need the ability to create networks that span multiple Engines. We are proud to unveil the “Overlay Driver” that we are incubating for inclusion in the next release of Engine.
The Overlay Driver requires you to provide a key-value store that is reachable by all hosts in the cluster. Once this is provided, we can use Docker Hub based discovery (just like Swarm) to set up the necessary VXLAN tunnels to allow the creation of distributed networks. So, when you run the following command, the new network will be available on every host.
docker network create -d overlay foo
We also have experimental support for integration between Compose, Swarm and multi-host networking, so your containers running in a Swarm can seamlessly communicate with each other. Check out the experimental documentation to find out more about this.
“One size never fits all”
– R. Callon, RFC 1925 – The Twelve Networking Truths
At Docker, we understand that there is no one way to do networking. With that in mind, we released support for networking plugins. Use a networking plugin from one of our awesome ecosystem partners or go ahead and write your own – the choice is yours. Check out the blog post about plugins to read more.
Loads of partners are already writing plugins or planning to integrate with Docker’s new networking system. Read more in our partner blog posts from Project Calico, Nuage Networks, Cisco, VMware, Microsoft, Weave, Midokura.
Try it out
The networking internals of the Engine have been completely rebuilt in the stable release of Docker, but multi-host networking and the command-line interface are still in an experimental state so you’ll have to download it in a separate experimental release. Head over here for instructions on how download the experimental release and use the new features in it.
Learn More about Docker Networking
• Live life on the bleeding edge with Docker’s Experimental Channel
• Try out Compose + Swarm + Network integration
• Collaborate with us on libnetwork
• Join the discussion on IRC
• #docker-network on Freenode
Join our next Docker online meetup recapping all of the news from DockerCon including demos of the latest features of Docker 1.7. The meetup is on Monday, June 29 at 10:00 PDT / 19:00 CEST – click here to register!
Learn More about Docker
- Read more about the Ecosystem Technology Partner (ETP) program
- New to Docker? Try our getting started tutorial
- Share images, automate builds, and more with a free Docker Hub account
- Subscribe to Docker Weekly
- Register for upcoming Docker Online Meetups
- Attend upcoming Docker Meetups
- Register for DockerCon 2015
- Start contributing to Docker