Distributed FS inside Docker Swarm

I want to implement a distributed file system on my servers, but do it with docker stack deploy.
Currently I’m running Docker Swarm on 10 machines and one of the services used up all of PC disk space. I see 2 solutions here:

  1. 1 Rewrite this service to support sharding and run each shard on different PC
  2. 2 Add a new swarm stack with distributed file system on few machines and let this service use this FS.

I don’t have root permissions to locally install DFS on each machine and I want to run it in Docker Swarm instead of manually starting containers. Is there a solution to do that?

Welcome here.
Docker has numerous storage plugins, and even many more not displayed here as such (like cephfs or rbd plugins).
Pick one you’re confortable with.

Personnaly I would go with cephfs as I’m very comfortable with. but there’s a learning phase you might need to go throw. A setup like this one might suit you. Since you’re not root on the servers, you wont be able to change /etc/ceph and /var/lib/ceph. But you could use docker volumes instead, that only mean you wont be able to use ceph from the hosts.

This is only a suggestion, to do what you want there’s also others options

Thank you! I’ll look into ceph.
What other options are you talking about?

glusterFS might worth a look too. and then these’s many commercials solutions like that too