Flocker is a Docker Volume plug-in for Docker. It requires additional software and support to get up and running. It's a great last resort option when your storage vendor does not provide a native Docker Volume plug-in. Flocker abstracts all vendors to look the same to Docker so you can't really leverage whatever differentiation your selected vendor has in terms of volume provisioning for different types of workloads. Flocker will provide HA for your volumes as well. What HA really means in this context is that if your container which have a Docker Volume will be rescheduled anywhere else in the cluster, the Docker Volume will follow and be mounted on that particular host before starting the container.
Nimble have taken the approach of developing their own native plug-in for Docker. Since we provide a number of features in our provisioning workflows and cloning ability our value would be marginal in a Docker deployment. We wanted to empower the Docker administrator with the full Nimble experience. What that means is that you as a Docker user can control the volume provisioning from the standard Docker CLI or API by providing option flags. From an HA standpoint we provide an identical experience compared to Flocker.
This is an overview of the capabilities we bring to Docker with our Docker Volume plug-in. For a more hands-on approach how this all fits together, you can browse through my blog post from a while back: Tech Preview of Nimble Linux Toolkit 2.0: Docker plug-in