Ben Firshman

Announcing Docker 1.9: Production-ready Swarm and Multi-host Networking

Today we’re releasing Docker 1.9 – and it’s a big one. Docker Swarm and multi-host networking are production-ready, Docker Engine has a new volume management system, and Docker Compose has much better support for multiple environments. These in combination establish the foundation for scaling your distributed apps in production.

Containerization is changing how you build infrastructure, and you need to use the right tools for the job. Docker Swarm turns your infrastructure into a single pool of resources for running your distributed apps, but all of the containers that are part of those apps need managing somehow. And they all probably need to talk to each other. And some of them probably need to store data somewhere. In a world where a container could be running on any host in your infrastructure, this is a difficult thing to manage.

Needless to say, we’ve got you covered. Docker Networking allows you create virtual networks that span underlying hosts, so your containers can communicate with each wherever they are. The new volume management system in Docker Engine lets you store persistent data wherever those containers land. On top of these fundamentals, you can then use Compose to run the important bit: your application.


Multi-host Networking

Networking was announced as part of the experimental release at DockerCon in June. We’re pleased to announce that Networking is now in the stable release of Docker Engine and ready to use in production.

Networking allows you to create virtual networks in Docker Engine that span multiple hosts. Containers can be attached to these networks wherever they are, giving you complete control over your network topology and what container can talk to what. Not only that, but the system powering networks can be swapped out with a plugin, allowing you to integrate with any networking system you want without having to modify your application.

Read more about this on our Networking blog post. We’ll also be hosting an online meetup dedicated just to Networking, where you can hear from the engineers who built it.


Persistent Storage

You’ve told us again and again that you’re struggling to store persistent data in your distributed apps. Docker 1.8 included volume plugins, allowing you to back Docker volumes by any third-party storage system.

We’ve now made that even better. Docker Engine 1.9 includes a completely redesigned volume system that makes them much easier to use and brings plugins to the forefront. It even works with Swarm, allowing you to manage persistent storage across your entire cluster.

Here’s how it works with the Flocker plugin:

$ docker volume create -d flocker --name=myvolume
$ docker run -v myvolume:/data busybox sh -c "echo hello > /data/file.txt"
$ docker run -v myvolume:/data busybox sh -c "cat /data/file.txt"


There are drivers available for Blockbridge, Ceph, ClusterHQ, EMC and Portworx. See the volume documentation and volume plugins documentation for full details.


Docker Swarm 1.0

Docker Swarm is native clustering for Docker Engine. For this release, we’ve buckled down and scale tested, bug squashed, optimized and hardened. In combination with new networking and volumes in this release, we can confidently say that Docker Swarm is ready for your production applications. We’ve been scale testing it to 1,000 nodes and 30,000 containers, and it doesn’t break a sweat.

Read more in this blog post and join our online meetup to learn more.


Docker Engine 1.9

In addition to networking and volume management, the 1.9 release has a bunch of other new features:

Build-time arguments in Dockerfile: It’s now possible to define arguments in a Dockerfile that can be passed to docker build to customize how an image is built. For example, you might want to set HTTP_PROXY, customize what version of a dependency is installed, etc.
Concurrent image pull: If you pull an image that is already in the process of being pulled, its progress will be displayed and the command will exit correctly. (No more getting stuck on “Layer already being pulled by another client”!)
Custom stop signals: A STOPSIGNAL Dockerfile instruction has been added allowing you to customize the signal that gets sent to your application when you do docker stop.
AWS CloudWatch logging driver: If you’re on AWS, you can now ship your container logs directly to CloudWatch.
Disk I/O metrics: docker stats will now display disk metrics.

Check out the release notes for the full list. Huge thanks to everyone who made this release happen – Madhav Puri for build-time arguments, and Darren Shepard, Patrick Hemmer, and Harald Albers for testing, reviewing and all around helping with the release.

Also, check out the upcoming webinar: Persistent Storage, Data and Docker to learn more about how to use the new volume management. Register today.


logo+title-final-compose-2bDocker Compose 1.5

Docker Compose is a tool for defining and running multi-container applications. Here’s what’s new:

Windows support: Compose now runs on Windows and is included in Docker Toolbox for Windows. This allows development environments built on Mac run on Windows, and vice versa.
Environment variables in Compose files: You can now make anything in your Compose file configurable at runtime by using environment variables.
Better support for multiple environments: You can specify a single base file that describes the structure of your app and override that with files that specify the differences in development, test, and production. See this guide for more information on how to do this.
Integration with networking: Experimental support for Docker’s new networking is in this release, so when you deploy a Compose app on a Swarm, it’ll work across multiple hosts. Full details are here.
Compose file validation: Compose will now thoroughly validate your Compose file and output much better error messages when you get something wrong.

Check out the release notes for everything that’s new, and download Docker Toolbox to try it out.


Docker Toolbox

To use all of this new stuff in development on Mac or Windows, download Docker Toolbox. It includes all the latest versions of everything above bundled into a single, convenient installer. Give it a try!

It also includes Machine 0.5, a tool for creating Docker Engines on your laptop and on cloud providers. Machine now has pluggable drivers, so if there’s a cloud or virtualization provider you want to run Docker containers on that’s not available today, you can now write your own driver for it. Check out the full release notes here.

To take advantage of all these features, plus a bunch of other bug fixes and more, download Docker Toolbox for Mac and Windows today.


Docker Registry 2.2

logo+title-final-registry-2Here’s what’s new in the latest release:

Google Cloud Storage support: You can now store your layers and manifests on Google infrastructure.
Read-only mode: If you want to maintain availability during unsafe administrative tasks, you can now switch Registry into a read-only mode to stop users from pushing.
Configurable file-existence and HTTP health checks: Administrators can temporarily disable a registry by placing a file on the filesystem. The registry can be configured to check the health of other services, such as notification endpoints.
Configurable HTTP response headers: You can now customize the HTTP headers that Registry responds with so you can improve security, customize it for your environment, etc.

Check out the release notes for the full list. Try the latest Docker Registry today.


 Learn More about Docker

• New to Docker? Try our 10 min online tutorial
• Sign up for a free 30 day trial of Docker
• Share images, automate builds, and more with a free Docker Hub account
• Read the Docker 1.9 Release Notes
• Subscribe to Docker Weekly
• Register for upcoming Docker Online Meetups
• Attend upcoming Docker Meetups
• Register for DockerCon Europe 2015
• Start contributing to Docker


, , , , ,

Ben Firshman

Announcing Docker 1.9: Production-ready Swarm and Multi-host Networking

22 Responses to “Announcing Docker 1.9: Production-ready Swarm and Multi-host Networking”

  1. Docker 1.9: Virtual Network, Persistent Storage, Swarm

    […] 1.9 is released, read Announcing Docker 1.9 for complete details. This […]

  2. cron.weekly: issue #1 | Cron Weekly: your weekly dose of linux news & tools

    […] Link: […]

  3. Tushar

    thank you

  4. Docker Releases 'Production-Ready' Net, Cluster Tools

    […] Docker’s multiple-host networking tool initially released for beta testing in June creates virtual networks in the core Docker Engine runtime that span multiple hosts. Application containers can then be attached to these networks regardless of host while allowing containers to communication with each other, Ben Firshman, a Docker software engineer, noted in a blog post. […]

  5. Nikos Nikolakakis


  6. Docker 1.9 & Swarm 1.0 sind da -

    […] Informationen zu allen Neuerungen und Änderungen in Docker 1.9 und Swarm 1.0 finden sich in den zugehörigen […]

  7. New Features in Docker 1.9, Including Virutal Networks and Persistent Storage -

    […] 1.9 is released, read Announcing Docker 1.9 for complete details. This release […]

  8. New Features in Docker 1.9, Including Virtual Networks and Persistent Storage | Dinesh Ram Kali.

    […] 1.9 is released, read Announcing Docker 1.9 for complete details. This release […]

  9. Docker 1.9 – Virtual Networks, Persistent Storage, Production-Ready Swarm | Dinesh Ram Kali.

    […] 1.9 is released, read Announcing Docker 1.9 for complete details. This release […]

  10. Docker 1.9发布通知 | SDNLAB | 专注网络创新技术

    […]     原文链接:Announcing Docker 1.9: Production-ready Swarm and Multi-host Networking […]

  11. Docker 1.9 Offers Improved Networking, Storage Features | Gottio Network

    […] at running stateful and stateless distributed applications in production and at scale, according to a blog post from Docker’s Ben Frishman, co-founder of Docker web host Orchard Laboratories which Docker bought last […]

  12. Open Source Eats Governance, and More. This Week in Open Source - Samsung Open Source Group Blog

    […] on Docker has continued ahead full steam with version 1.9 released this week. It includes a huge amount of changes and new […]

  13. New release of Docker, R-Hub for R packages, and more news |

    […] announced the release of Docker 1.9 and updated versions of several supporting components of the Docker ecosystem. Key features in the […]

  14. Docker 1.9正式发布,支持Swarm和多宿主机互联 _ HPJ's Personal Website

    […] 公司正式发布 Docker 1.9 版本。该版本包含了正式用于产品的 Swarm 和多宿主机互联功能,为 Docker […]

  15. Web Operations Weekly No.39 | ENUE Blog

    […] Docker 1.9 Released: Production-Ready Swarm and Multi-Host Networking […]

  16. Docker 1.9正式发布,支持Swarm和多宿主机互联-紫金星

    […] 公司正式发布 Docker 1.9 版本。该版本包含了正式用于产品的 Swarm 和多宿主机互联功能,为 Docker […]

  17. Docker 1.9正式发布,支持Swarm和多宿主机互联 – docker世界

    […] 近日,Docker公司正式发布Docker 1.9版本。该版本包含了正式用于产品的Swarm和多宿主机互联功能,为Docker引擎添加了新的卷管理系统,并修改了Compose使其更好的支持多种环境。 […]

  18. eshiferax/chaoslemur | GITROOM

    […] – Docker built-in advanced networking is now production ready and in Docker 1.9!!! So I don’t think pipework is necessary anymore, […]

  19. Docker 1.9とDocker Swarmのマルチホストネットワーク体験 | 9月終わったら起こして

    […] Swarmもv1.0となりnetworkコマンドに対応しました(参考). […]

  20. Learning Docker | Lost in Malloc

    […] the beginning of November 2015, Docker 1.9 was released and with it multi-host networking was introduced. At the same time, Swarm finally reached a stable […]

  21. Ressortez vos partitions pour Docker Compose 1.5 - SFEIR Mag

    […] 3 novembre dernier a vu arriver un gros lot de nouveautés pour l’écosystème Docker. Cet article du blog SFEIR couvre ces annonces et il est temps de […]


Leave a Reply

Get the Latest Docker News by Email

Docker Weekly is a newsletter with the latest content on Docker and the agenda for the upcoming weeks.