Open GRX opened 4 years ago
You can workaround this issue by leaving a dump file on the remote location.
I didnt try it yet with docker compose, but I also couldn't make any connections. I finally solved it by:
Hope this helps either you or the development team.
I'm getting this error message as well:
# docker run -ti -v nextcloud-html:/var/www/html nextcloud /bin/bash
docker: Error response from daemon: failed to copy file info for /var/lib/docker/plugins/2bb483b4a3521a55bff3d7284d4f1646b74092430c307ba7fea29306ea92fa89/propagated-mount/21558aea1829ef2d4bd4c0b95f4e5f60: failed to chown /var/lib/docker/plugins/2bb483b4a3521a55bff3d7284d4f1646b74092430c307ba7fea29306ea92fa89/propagated-mount/21558aea1829ef2d4bd4c0b95f4e5f60: lchown /var/lib/docker/plugins/2bb483b4a3521a55bff3d7284d4f1646b74092430c307ba7fea29306ea92fa89/propagated-mount/21558aea1829ef2d4bd4c0b95f4e5f60: permission denied.
See 'docker run --help'.
In my case this seems to happen because I have use two sshfs volumes (nextcloud-db and nextcloud-html) on the same remote ssh server like in this example:
# docker volume inspect nextcloud-db
[
{
"CreatedAt": "0001-01-01T00:00:00Z",
"Driver": "vieux/sshfs:latest",
"Labels": null,
"Mountpoint": "/mnt/volumes/2e01dcda104ec5521369b7d308810632",
"Name": "nextcloud-db",
"Options": {
"allow_other": "",
"gid": "999",
"password": "xxx",
"sshcmd": "uxxx-sub1@uxxx.your-storagebox.de:nextcloud_db",
"uid": "999"
},
"Scope": "local"
}
]
# docker volume inspect nextcloud-html
[
{
"CreatedAt": "0001-01-01T00:00:00Z",
"Driver": "vieux/sshfs:latest",
"Labels": null,
"Mountpoint": "/mnt/volumes/21558aea1829ef2d4bd4c0b95f4e5f60",
"Name": "nextcloud-html",
"Options": {
"allow_other": "",
"password": "xxx",
"sshcmd": "uxxx-sub2@uxxx.your-storagebox.de:",
"uid": "33"
},
"Scope": "local"
}
]
I figured out that it seems I cannot use both volumes at the same time.
It is possible to mount volume nextcloud-db to a mariadb container, but if I startup a second container (see docker run in my 3rd Line) this happens. If I stop/rm the mariadb container first, my 3rd line executes successfully.
Please note that both volumes are hosted on the same host (but accessed via different ssh-users). Could it be related to the different uid-Values I use in the volumes?
best regards, Christoph
You can workaround this issue by leaving a dump file on the remote location.
What exactly do you mean by that? Do you have got an example? How can I produce such a dump file?
I am having the same issue but may have a solution. Trying to use docker-compose to attach sshfs volumes.
docker version: 20.10.7 host: ubuntu 20.04 (kernel 5.4.0-80-generic)
Tried with public key authentication as well as password. Volume is created, user has full r/w/x over ssh with either method, can manually edit. Run docker-compse and watch auth logs on storage server, no problems there. Removed ACLs, set remote dirs to 777 and the parent folders.
Every time after the volume driver authenticates, docker-compose was failing with the following error:
failed to copy file info for /var/lib/docker/plugins/33378cc08f72a307a93f8f14391ef77eb78de6ed6f97fc427a3c096d0f162956/propagated-mount/364cea55c25d60e3da22a307ac46c260: failed to chown /var/lib/docker/plugins/33378cc08f72a307a93f8f14391ef77eb78de6ed6f97fc427a3c096d0f162956/propagated-mount/364cea55c25d60e3da22a307ac46c260: lchown /var/lib/docker/plugins/33378cc08f72a307a93f8f14391ef77eb78de6ed6f97fc427a3c096d0f162956/propagated-mount/364cea55c25d60e3da22a307ac46c260: permission denied
Tried above suggestions, including creating the volume in advance, and the suggestions in issues 17, 58. 65.
Possible solution: the "dump" file mentioned by @andanotherusername
Steps to Recreate:
/mnt/volumes/containers/mycontainer
touch dump
-- that's it, it doesn't even have to be called dump.This did not work when I set custom uid/gid in my compose file, but with the defaults it seems to be successful and the container can now mount + write to the sshfs volume!
But isn't this still an issue, because without manually creating files within an sshfs volume, they will not mount? This will break any docker automation unless you create scripts to stage your volume storage in advance
Hi,
I'm trying to get the sshfs volume working for my backup stack, but everytime I try to mount the endpoint I get prompted with permission denied.
With the user that's running docker-compose, I can access the folder so I'm not sure why this is going wrong.
Error when running docker-compose:
Error response from daemon: failed to copy file info for /var/lib/docker/plugins/a1318307eab6ed3e2bcfffa7a5226d557e7a2a6f12b4d48113d2e79063da848d/propagated-mount/e6c0b9b0593381f295d4a5c925f8ad8b: failed to chown /var/lib/docker/plugins/a1318307eab6ed3e2bcfffa7a5226d557e7a2a6f12b4d48113d2e79063da848d/propagated-mount/e6c0b9b0593381f295d4a5c925f8ad8b: lchown /var/lib/docker/plugins/a1318307eab6ed3e2bcfffa7a5226d557e7a2a6f12b4d48113d2e79063da848d/propagated-mount/e6c0b9b0593381f295d4a5c925f8ad8b: permission denied.