docker-volume-gluster
docker-volume-gluster copied to clipboard
VolumeDriver.Mount: exit status 107
version
sapk/plugin-gluster:lates
myOS
centOS 7.4
when i run this command :
docker run -d --volume-driver sapk/plugin-gluster:latest --volume huihigh:/mnt centos echo "Hello zhouqy from a container" >> /mnt/hello-from-container.txt
error log
/usr/bin/docker-current: Error response from daemon: error while mounting volume '/var/lib/docker/plugins/4cb99a7e4a34224c8003186ed067dce1c9c02c55a4ab57f35c613a83bc60b580/rootfs': VolumeDriver.Mount: exit status 107.
Some errors got into a big refactor I have done. I republish the old version while I do more testing.
You can get it by re-doing a docker plugin install sapk/plugin-gluster:latest
or using the fixed tag docker plugin install sapk/plugin-gluster:v1.0.7-3
Sorry for the inconvenient.
thanks 👍 💯
Hello,
I've just downloaded the latest version of your plugin and followed the "New & Easy Method" to test it. When I run this command:
docker run -v testvolume:/glustervolume --rm -ti ubuntu
I get this error message:
C:\Program Files\Docker\Docker\Resources\bin\docker.exe: Error response from daemon: error while mounting volume '/var/lib/docker/plugins/8f6e9700486a5b739bac6b903b8cb9697be5252337dc8e33633797ca2f133999/propagated-mount/testvolume': VolumeDriver.Mount: exit status 107.
I'm using Docker for Windows 10. ¿Any advice?
Thanks for your help
both image are not working:
sapk/plugin-gluster:v1.0.7-3 sapk/plugin-gluster:lastest
tested on play-with-docker
[manager5] (local) [email protected] ~
$ docker plugin install sapk/plugin-gluster:v1.0.7-3
Plugin "sapk/plugin-gluster:v1.0.7-3" is requesting the following privileges:
- network: [host]
- device: [/dev/fuse]
- capabilities: [CAP_SYS_ADMIN]
Do you grant the above permissions? [y/N] y
v1.0.7-3: Pulling from sapk/plugin-gluster
bbd7577a860b: Download complete
Digest: sha256:8b9fef369e7ba183e8eb2d82397ac019126bbca734431e9d67bd776c3b5ebe56
Status: Downloaded newer image for sapk/plugin-gluster:v1.0.7-3
Installed plugin sapk/plugin-gluster:v1.0.7-3
[manager5] (local) [email protected] ~
$ docker volume create --driver sapk/plugin-gluster --opt voluri="glustervol:thisdir" --name thisdir
Error response from daemon: create thisdir: error looking up volume plugin sapk/plugin-gluster: plugin "sapk/plugin-gluster" not found
[manager5] (local) [email protected] ~
$ docker plugin install sapk/plugin-gluster:latest
Plugin "sapk/plugin-gluster:latest" is requesting the following privileges:
- network: [host]
- device: [/dev/fuse]
- capabilities: [CAP_SYS_ADMIN]
Do you grant the above permissions? [y/N] y
latest: Pulling from sapk/plugin-gluster
2c02d497ac75: Download complete
Digest: sha256:d19c1a17316a00f14bc81b6396afe10d0d43aa5f21a38d08819bb17b9d93e96c
Status: Downloaded newer image for sapk/plugin-gluster:latest
Installed plugin sapk/plugin-gluster:latest
[manager5] (local) [email protected] ~
$ docker volume create --driver sapk/plugin-gluster --opt voluri="glustervol:thisdir" --name thisdir
thisdir
[manager5] (local) [email protected] ~
$ docker run -v thisdir:/mnt --rm -ti debian:jessie
Unable to find image 'debian:jessie' locally
jessie: Pulling from library/debian
f2b6b4884fc8: Pull complete
Digest: sha256:a69efd2cf1f83d7fe6a374aaf27974ed031d72b2886acb4b730c6a2017db0c3d
Status: Downloaded newer image for debian:jessie
docker: Error response from daemon: VolumeDriver.Mount: exit status 107.
See 'docker run --help'.
[manager5] (local) [email protected] ~
Make sure glusterfs volume is operational
sapk/plugin-gluster:v1.0.7-3 worked for me but not latest. @sapk which branch did you use to build v1.0.7-3 ?
I'm building my own from source code (Master or Old branches) and I'm getting "exit status 107" as well.
I'm building the plugin with:
$ make docker-plugin
$ make docker-plugin-enable
is there something I'm missing?
@jantoniomartinez It must be the old branch. To build exactly the same, you can checkout the commit or tag https://github.com/sapk/docker-volume-gluster/releases/tag/v1.0.7-2
@sapk Hi, I was able to run the solution from source code and talk to gluster server. 'Master' and 'Old' branches worked fine.
I had to run the binary as sudo:
$ make build
$ sudo ./docker-plugin-gluster daemon -v
But, when I build the docker image from source code and run it as docker plugin, I still get the following error:
level=error msg="Handler for POST /v1.38/containers/create returned error: VolumeDriver.Mount: exit status 107"
This is on any branch. It's definitely something happening inside the container. Can you guide me how I can build the docker image and use it as plugin?
I noticed that when I install the plugin from Docker HUB, it asks for the following:
Plugin "sapk/plugin-gluster:v1.0.7-3" is requesting the following privileges:
- network: [host]
- device: [/dev/fuse]
- capabilities: [CAP_SYS_ADMIN]
Not sure if I'm giving the rights privileges to my built docker image.
Thanks, Antonio
I start to think that it is maybe related to fuse. Maybe the path to fuse that is not the same or the fuse lib inside the container that is incompatible with the host one. For information, the permission are define for the plugin inside the config.json file.
@sapk Can you please tell me how you are building the docker plugin from source code? I'm sure I'm missing something when building it. By the way, both sapk/plugin-gluster:v1.0.7-3, sapk/plugin-gluster:lastest worked with my gluster server.
The plugin and binary is build on travis. You can find the .travis.yml file at the root of the repo (especially the release part). But maybe a package was updated since and that what failed now. I haven't retested to know exactly what happened.
After reviewing changes in 7 months a lot seems to have change in gluster (version 4 and 5). I will have a look at it and make master work.
@sapk I made it work temporarily but using ubuntu:latest docker base image, instead of the debian:testing-slim you had. Some library o version incompatibility was missing in the debian:testing-slim base image.
@jantoniomartinez the ubuntu image has shrunk down even further than debian. I will switch to it if it works better.
Hi,
I have the same issue with ubuntu:latest image. I tried with an alpine:latest with no success. This is the volume details:
[
{
"CreatedAt": "0001-01-01T00:00:00Z",
"Driver": "sapk/plugin-gluster:latest",
"Labels": {},
"Mountpoint": "/var/lib/docker-volumes/gluster/glustervol",
"Name": "glustervol",
"Options": {
"voluri": "srvmdwqlt:gluster_volume"
},
"Scope": "global",
"Status": {
"TODO": "List"
}
}
]
@andreaschiona-tria What is your host machine? I suspect that the different fuse path across distrib seems to be the residual bug. You can also try to run the binary version to eliminate that problem. On other side, I have done more progress in another driver https://github.com/sapk/docker-volume-rclone that I should import back in this project also.
My host machine:
NAME="Oracle Linux Server"
VERSION="7.6"
I'll try the binary version.
Do you suggest to use docker-volume-rclone instead of this for share volumes between containers in different hosts?
Thanks! Andrea
@andreaschiona-tria I use it every day so it will be more maintained than this one but it is not exactly for the same purpose. If you find a good interface/provider for your need in https://rclone.org/ go for it as it will also be lightweight compare to gluster.
@sapk thanks! I use local file system, and rclone support it. So I0m going to try it! Thanks, Andrea
@sapk I don't understood that rsync for local FS can sync only directory in the same file system.. so i can't use it!
If you want to share a local folder on multiple docker host. I can recommand you to setup minio to have a s3 like server and use rclone to mount the volume.