Right from its inception, the Project Calico team has been focused on delivering a virtual networking solution that works equally well for virtual machines and containers. We first demonstrated Calico working with containers back in November 2014, and, together with the folks at Docker, we’ve continued to extend and harden our Docker solution since then.
One of the key challenges with third-party networking solutions for Docker has been how to make the user experience seamless. Up to now, we’ve relied on Powerstrip which provides a tool for prototyping extensions to Docker. We were excited when Docker announced their intention to integrate a networking plug-in capability into their core distribution, and have been working closely with the Docker team and broader community to provide input to the evolving API definition. And we are thrilled that, as of Docker 1.7, libnetwork will be integrated with Docker to provide an API for networking with support for third-party plugins in the Docker experimental channel.
We have been developing Calico in parallel with the evolution of libnetwork over recent months. And so we are pleased to be able to announce that the latest release of Calico includes a driver for libnetwork that implements the Docker Container Network Model and supports networking of Docker containers the Calico way.
If you’re new to Calico, here’s a quick summary of how the Calico solution provides network connectivity for containers:
It’s perhaps also worth saying what Calico is not: it is not an overlay networking solution. Calico emphasizes simplicity, and connects containers directly to the IP fabric in the data center. This simplicity makes Calico easy to deploy, easy to use, easy to troubleshoot and highly efficient. Just as containers provide a “lightweight” solution to deploying apps in the cloud, so Calico provides a “lightweight” solution to networking those apps. Philosophically, Calico is very well aligned with Docker.
The Calico team has worked very hard to deliver the Docker networking driver in a highly compressed timescale, and is immensely proud to be among the first third-party solutions to implement Docker’s new approach to networking. We very much look forward to continuing our work with Docker as libnetwork evolves.
To try out Calico networking for Docker visit the calico-docker GitHub page and follow one of the tutorials for getting started on Vagrant/VirtualBox, AWS, GCE, or Digital Ocean. Or watch the one minute Calico Docker install video on projectcalico.org.
Get updates on blog posts, new releases and more!