docker том sshfs выдает ошибку при подключении - PullRequest
0 голосов
/ 26 февраля 2020

Я создал том, используя vieux/sshfs драйвер. (следующий Использование драйвера )

docker volume create --driver vieux/sshfs -o sshcmd=myuser@172.17.203.17:/home/myuser sshvolume

И проверьте, создан ли он, используя inspect

$ docker volume inspect sshvolume
[
    {
        "CreatedAt": "0001-01-01T00:00:00Z",
        "Driver": "vieux/sshfs:latest",
        "Labels": {},
        "Mountpoint": "/mnt/volumes/c28f5d0fcff19cf62cd4688723d9c378",
        "Name": "sshvolume",
        "Options": {
            "sshcmd": "myuser@172.17.203.17:/home/myuser"
        },
        "Scope": "local"
    }
]

Скопируйте s sh, чтобы убедиться, myuser имеет password меньше доступа к 172.17.203.17

[myuser@server1 ~]$ ssh 172.17.203.17
Last login: Tue Feb 25 21:25:27 2020 from server2.company.com
pyenv: cannot rehash: /usr/local/pyenv/shims isn't writable
[myuser@server2 ~]$

Но когда я запускаю команду docker для создания какого-либо файла в сопоставленном томе, он выдает ошибку.

$ docker run -v sshvolume:/root --rm alpine:latest touch /root/test.txt
Unable to find image 'alpine:latest' locally
latest: Pulling from library/alpine
c9b1b535fdd9: Pull complete
Digest: sha256:ab00606a42621fb68f2ed6ad3c88be54397f981a7b70a79db3d1172b11c4367d
Status: Downloaded newer image for alpine:latest
docker: Error response from daemon: VolumeDriver.Mount: sshfs command execute failed: exit status 1 (read: Connection reset by peer
).
See 'docker run --help'.

Но если я использую отображение directory, то оно работает.

$ ls -la /tmp/test.txt ls: невозможно получить доступ к /tmp/test.txt: нет такого файла или каталога $ docker запустите -v / tmp: / root --rm alpine: последнее прикосновение /root/test.txt $ ls -la /tmp/test.txt -rw-r - r--. 1 root root 0 25 февраля 21:33 /tmp/test.txt

Есть ли способ проверить sshfs или почему sshfs не работает в docker?

...