Docker Community Forums

Share and learn in the Docker community.

Source code for Cloudstor plugin

Is the source code for Cloudstor volume driver plugin available anywhere?

Can’t find it in the moby github, or anywhere else.

Thanks

The Cloudstor source code is not publicly available.

Are there any features or bugs that you’d like for us to add or address?

If you create a volume on a node in aws: (efs)

docker volume create --driver cloudstor:aws newvol

and run with it:

docker run -d -v newvol:/efs busybox tail -f /dev/null

this volume becomes visible on other nodes in the swarm.

If another node issues

docker volume rm newvol

then the result is that the volume becomes inaccessible on the first node ‘stale nfs handle’.

I’ve got an end to end session log of showing this happen, but it’s pretty easy to recreate.

  1. create a cloudstor aws efs volume on one node
  2. verify through docker volume ls that it appears on all nodes
  3. run a container using the volume on a node
  4. docker volume rm from a different node
  5. observe that the container you started in (3) is showing stale nfs handle on the mountpoint.

@garycowell We do document this behavior @ https://docs.docker.com/docker-for-aws/persistent-data-volumes/#list-or-remove-volumes-created-by-cloudstor:

You can use docker volume rm [volume name] to remove a Cloudstor volume from any node. If you remove a volume from one node, make sure it is not being used by another active node, since those tasks/containers in another node will lose access to their data.