Arguably one of the primary reasons that Docker containers are so widely adopted is that Docker stabilizes the API; thereby giving developers access to any number of micro-services that can be invoked on multiple platforms. Now Docker is preparing to extend those APIs across networks following the acquisition this week of SocketPlane.
David Messina, vice president of marketing for Docker, says that while Docker has enjoyed tremendous developer support, the next big thing for the container APIs will be the addition of software-defined network services that will make it simpler to build distributed computing applications. Messina says this is an area that SocketPlane has been working on, which will soon manifest itself in a future update to the Docker API.
Once those services are in place it should be possible to, for example, build distributed applications that span hybrid clouds, says Messina.
Having that capability should also mute a debate concerning where Docker containers should run. Some advocate that Docker containers are a more efficient virtualization alternative to virtual machines. Others contend that given the immaturity of Docker containers it’s more prudent to run them on top of a virtual machine, a platform-as-a-service (PaaS) environment, or nest them inside a more mature container platform.
SocketPlane only has six employees, but they’ve been heavily involved in the development of OpenStack, OpenDaylight, Open vSwitch as well as the Open Virtual Network (OVN) project. Messina says that whatever they wind up contributing to the Docker API will be accessible by both these open standards as well as proprietary network architectures promulgated by, for example, Cisco and VMware. The OpenStack community, for example, has already kicked off a project to add support for Docker containers alongside Kernel-based virtual machines (KVM).
While Docker clearly provides some significant benefits to IT operations teams, the primary drivers of its adoption have been developers. In fact, a recent survey of 745 IT professionals found that 31 percent of them had already deployed Docker containers in at least one production environment.
The degree to which Docker containers will usurp virtual machines remains to be seen. In many ways Docker containers are following the same evolutionary path as virtual machines; just in a more compressed time frame. Clearly, Docker containers are going to be a major part of the application development firmament going forward as more developers continue to vote with their feet for an architecture that makes it simple to expose micro services using a consistent set of APIs.