컨테이너에 NFS 볼륨 탑재

컨테이너에 NFS 볼륨 탑재

내보낸 파일 시스템이 있는 NFS 서버가 있습니다.

showmount -e nfsserver
Export list for nfsserver:
/opt/application/aghas0/docker client1,client2

client2 서버에서는 nfsserver의 파일 시스템을 마운트했으며 작동합니다.

nfsserver:/opt/application/aghas0/docker  9.8G   23M  9.2G   1% /opt/application/aghas0/docker

그래서 nfsvol이라는 NFS Docker 볼륨을 만들어 보았습니다.

docker volume inspect nfsvol
[
    {
        "CreatedAt": "2019-07-16T16:31:47+02:00",
        "Driver": "local",
        "Labels": {},
        "Mountpoint": "/var/lib/docker/volumes/nfsvol/_data",
        "Name": "nfsvol",
        "Options": {
            "device": ":/opt/application/aghas0/docker",
            "o": "addr=nfsserver_Ip,rw",
            "type": "nfs"
        },
        "Scope": "local"
    }
]

하지만 이 볼륨을 컨테이너에 마운트하려고 하면 다음 오류가 발생합니다.

docker run -it -v nfsvol:/mnt alpine sh
docker: Error response from daemon: error while mounting volume with options: type='nfs' device=':/opt/application/aghas0/docker' o='addr=10.118.120.46,rw': input/output error.

NFS4를 사용하고 있습니다. 이 버전에 대한 특정 구성이 있는지 모르겠습니다. 이 문제를 해결하는 방법을 아는 사람이 있나요?

답변1

문제가 발견되었습니다.

도커 볼륨을 생성할 때 다음과 같은 옵션으로 사용되는 nfs 버전을 전달해야 합니다.

docker volume create --driver local --opt type=nfs --opt o=addr=nfsserver_IP,rw,vers=4 --opt device=:/opt/application/aghas0/ansible nfsvol

이것은 내 문제를 해결했습니다.

관련 정보