At DockerCon 16, approximately 4,000 attendees descended on the Washington State Convention Center in Seattle from June 19 to 21 to learn about and experience the phenomenon that is the Docker container ecosystem.
The big news of the event came on the first day of the conference with the announcement of Docker 1.12 and its integrated orchestration system. In the keynote speeches and in multiple sessions that I attended, that new Swarm mode was a hot topic of technical and business discussion.
Swarm mode provides the integrated orchestration and clustering capabilities, and with it, the Docker Engine is becoming significantly more powerful. Rather than requiring users to run a separate tool to orchestrate containers, whether that tool is Docker Swarm, Apache Mesos or Kubernetes, the Docker Engine itself is now a reasonably capable orchestration tool.
Docker Inc. representatives at the conference time and again referred to the integration as part of the "democratization" of orchestration and making it more available to the masses. The general thought process is that orchestration today is hard and by providing it as an integrated capability inside the Docker Engine itself, it's now easier for organizations to benefit.
What it also serves to do is ramp up the competitive landscape and, perhaps, the competitive rhetoric. Docker's partner promise has long been summed up in the slogan "batteries included, but swappable." What that translates into is that Docker is increasingly integrating needed capabilities (the batteries) into Docker Engine, but users are free to swap out those batteries for the technology of their choice. By design, Docker is modular and by true open-source philosophy, Docker enables user choice and does not aim to lock users in.
The integrated orchestration is swappable such that a user can choose to use a competitive alternative, but that's the catch now isn't it? Before, Docker 1.12, Kubernetes or Mesos were considered to be options for orchestration, just like the stand-alone Docker Swarm project. Now, it's a competitive choice for organizations to actively make the decision whether they want to use another tool when they simply can just do what they need with the Docker Engine.
The batteries-included approach is also one that inspired Docker to directly integrate networking into the Docker Engine 1.9.0 release in November 2015. Prior to Docker 1.9.0, networking wasn't directly integrated in an easy way. Just as there are multiple options for orchestration, there are also multiple options for networking containers, including Weave, Plumgrid, Midokura, Canal and Aviatrix.
It was back in March 2015 that Docker acquired container networking vendor SocketPlane, which was once among the many stand-alone container networking vendors. I attended a pair of sessions at Dockercon 16 with SocketPlane founder Madhu Venugopal, who now leads Docker's networking efforts, and the repeated message was that Docker gives users what they need. That is to say that, out of the box, a regular user can get the core set of networking requirements, including Domain Name System, IP addressing and as of Docker 1.12 with integrated Swarm mode, load balancing and clustering.