Open minzak opened 4 years ago
We have the same issue running on ubuntu 18.04
Same problem. I have Fedora 31 + gluster 7.1 and glusterfs works from host, but with docker I get same error
Maybe problem is that this plugin works only with glusterfs version 3.x, see #18 last comments
I ran into this as well. It was because the latest
tag for trajano/glusterfs-volume-plugin
on dockerhub is quite old. Using trajano/glusterfs-volume-plugin:v2.0.3
seems to work.
@mukerjee what version of the glusterfs you use on your glusterfs server?
@timnis I'm using glusterfs 7.2
Seems to work fine. That said, I ran into issues trying to get docker to create a subdirectory on the fly for new containers. It seems like glusterfs
has return code 0 in this situation but doesn't actually do anything.
I switched to mounting glusterfs on the host and then using https://github.com/MatchbookLab/local-persist to point each container at a new subdirectory below the glusterfs mount point. This gives me the behavior i want: new subdirectory per container created on the fly with the right permissions for that container.
I was seeing "exit status 1" as well, with a new glusterfs 7.3 volume, until I saw this issue. Switching to v2.0.3 fixed it for me.
@kavian72 and what docker version you are using? can you share your install steps for this plugin? Im using too the 7.3 version of gluster and docker 19.03.7, but is not working, instead of use the gluster volume, is using the normal hard disk and mounting the volume for the container there.
@donatocl I'm using docker-ce 19.03.6, so very similar to yours. For the installation, I used the documented install steps, with just one change: instead of referring to trajano/glusterfs-volume-plugin
(which translates to trajano/glusterfs-volume-plugin:latest
), I specifically referenced trajano/glusterfs-volume-plugin:v2.0.3
. For everything else, I just followed the documented steps.
However, I don't understand the screenshot you're showing...that's obviously from your host machine, but the Docker volume would only be visible from inside the guest container. Also, the host machine you're using appears to be your Gluster host itself...if you're creating your containers right on the Gluster host machine, then you don't really need the Docker volume plugin, i.e. you can just use a bind mount to the locally-mounted Gluster volume. The Gluster volume driver is needed when you are running your container on another machine.
So, overall, I'm very confused by what you're showing us. :smile:
Getting the same problem.. has anyone solved it?
docker: Error response from daemon: VolumeDriver.Mount: error mounting my-vol: exit status 1.
Docker version:
akshat.s@host1:~$ docker version
Client:
Version: 18.09.0
API version: 1.39
Go version: go1.10.4
Git commit: 4d60db4
Built: Wed Nov 7 00:48:53 2018
OS/Arch: linux/amd64
Experimental: false
Glusterfs version:
glusterfs 7.3
Repository revision: git://git.gluster.org/glust...
Copyright (c) 2006-2016 Red Hat, Inc. <https: www.gluster.org=""/>
GlusterFS comes with ABSOLUTELY NO WARRANTY.
It is licensed to you under your choice of the GNU Lesser
General Public License, version 3 or any later version (LGPLv3
or later), or the GNU General Public License, version 2 (GPLv2),
in all cases as published by the Free Software Foundation.
trajano/glusterfs-volume-plugin:v2.0.3
Thanks...this solve the mount problem...
3 nodes - Ubuntu 20.04 glusterfs-server 7.x docker 19.03.8
Is there any chance you fix the issue with the "latest" tag?
I think the safer action would be to remove the "latest" tag altogether, and just update the documentation to list the actual latest value as each new release is published.
Using a tag such as this is not a very good practice, because it hides what version you're using. When you download the "latest" tag to your machine, how do you keep track of what you have vs. what updates are available? A tag named "latest" may sound easier to use, but it's obfuscating important information...so in the long term, it's actually making things harder.
I know the use of "latest" is a common practice among the Docker community, and what I'm saying is probably an unpopular viewpoint. But "popular" is not the same as "correct". :-)
@kavian72 I agree, perhaps @ximon18 port will handle it.
@kavian72, that is the safest solution. Having properly updated documentation can also save some frustration from a lot of people. Nevertheless, I do not understand why "latest" is not delivering the same as 2.0.3... 2.0.3 is the latest, right?
@trajano and all other contributors, thank you very much for this great plugin!
Not sure, I stopped working on this when I reformatted my PC and couldn't get the build scripts to work locally. The CI builds do not work as expected since this creates 3 images rather than one so I used to do them on my machine and never got around putting the CI process on something like Travis.
I'll try and get to publishing my port as soon as I can, some other priorities and the consequences of the global situation got in the way until now. FYI for my own purposes I did already publish a Docker image containing the tini
patch but there's no published source code for it nor any CI to build it, both of which I want to setup as a proper fork. It's also only the Gluster volume plugin, I'm not sure if I can or should take over the other backend volume plugins as I don't use them, know anything about them nor have a setup to test them. The plugin that I am using is here: https://hub.docker.com/r/ximoneighteen/glusterfs-volume-plugin
I have worked gluster cluster. sync also worked.
And I have simple docker-compose file
I can't run because always got the same error like this
And this
I'm try use name: "gfs/data" name: "gluster-fs/data"
Also i try recreate gluster volume with other names like
gfs
Also i manually create folderdata
And no lucky. It is worked?