Persistent Docker volumes with Azure File Storage

Posted on 16 March, 2016

Software Engineer, Azure Linux

Today we are announcing the Docker Volume Plugin for Azure File Storage. Leveraging the SMB 3.0 protocol support capabilities of Azure File Storage on Linux. This open source Docker volume plugin allows Docker containers to have data volumes stored outside the Virtual Machine and therefore makes it easy to migrate stateful containers between hosts.

A standard Docker container volume is normally a directory stored on the Docker host machine. This makes the container dependent on the files on a particular host and thus makes it hard to migrate and scale out easily. With the Azure File Storage plugin, we can mount Azure File Storage shares as directories on your host’s file system and make it available to containers, which can now all make use of the Docker volume created through the plugin.

Azure File Storage volume plugin is not limited to ease of container migration. It also allows a file share to be shared among multiple containers (even though they are on different hosts) to collaborate on workloads, share configuration or secrets of an application running on multiple hosts. Another use case is uploading metrics and diagnostics data such as logs from applications to a file share for further processing.

Here is a demo of the Azure File Storage plugin in action:

This Docker volume plugin is currently supported on Ubuntu Server versions 14.04 and above. The source code and installation instructions can be found on GitHub. Please give it a try and let us know how you like it.

For more details, please read: