Docker Compose Bind Mount or Volume with DO Volume

Posted October 30, 2020 5.3k views
DockerDigitalOcean Volumes says “Bind Mounts” are inferior to “Volumes”. But volumes run on the host machine’s disk, not the DO Volume.

Changing the Docker “data root” could move all things Docker to the DO Volume, but I worry about a) persisting unnecessary data and b) running two hosts from the same data root.

What’s the best way to persist a docker-compose.yml app’s data on a DO volume?

Thank you!

These answers are provided by our Community. If you find them useful, show some love by clicking the heart. If you run into issues leave a comment, or add your own answer to help others.

Submit an Answer
1 answer

Hi there @digitalocean457,

One option would be to follow the steps here on how to attach DigitalOcean Block Storage to Docker container:

The main thing to consider in this case is that block storage can only be mounted to 1 Droplet at a time. If you have a docker swarm and you need to mount the volume to multiple droplets, as mentioned by one of the users in that question, you could use GlusterFS as a replacement solution instead.

Hope that this helps!

by Mark Drake
GlusterFS is a network-attached storage filesystem that allows you to pool computing or storage resources of multiple machines. In turn, this lets you treat various computers as a single, more powerful unit. In this guide, you will create a redundant clustered storage array. This will provide functionality similar to a mirrored RAID configuration over the network