2

2つのホスト間で共有されるドッカーボリュームを作成しようとしています。 のは、ボリュームは、次のコマンドを使用して、ホストA上で作成されたとき、私は二つのホストAとBを持っているとしましょう:Docker共有ボリュームの作成

docker volume inspect foo 
[ 
    { 
    "Name": "foo", 
    "Driver": "local", 
    "Mountpoint": "/var/lib/docker/volumes/foo/_data", 
    "Labels": {}, 
    "Scope": "local" 
    } 
] 

docker volume create --driver local --opt type=nfs --opt o=addr=B,rw --opt device=:/tmp/dir --name foo 

ボリュームの検査の後、結果は以下のとおりです。私の質問は:ボリュームのマウントポイントディレクトリが/ tmp/dirディレクトリを指していないが、デフォルトのドッカーボリュームの場所を指すのはなぜですか?ディレクトリ・ホストB/tmp/dirのデータが共有可能であるとはどのように考えることができますか?

ありがとうございます!

+0

はルックスを(名前付きfoo)。名前付きボリュームの場所はDockerによって処理され、制御できません(私は思う) – toussa

答えて

0

作成したボリュームがinspectの出力と一致しません。これは、ボリューム作成コマンドが失敗したことを示しているか、ボリュームの間違ったホストをチェックしている可能性があります。ドッキングウィンドウの現在のバージョンでは、予想される出力は次のようになります。あなたが生成される出力は、オプションなしで作成したローカルボリュームと一致する

$ docker volume create --driver local --opt type=nfs \ 
     --opt o=addr=10.10.10.10,rw --opt device=:/path/to/dir nfs_test 

$ docker volume inspect nfs_test          
[ 
    { 
     "CreatedAt": "2018-02-18T12:10:03-05:00", 
     "Driver": "local", 
     "Labels": {}, 
     "Mountpoint": "/home/var-docker/volumes/nfs_test/_data", 
     "Name": "nfs_test", 
     "Options": { 
      "device": ":/path/to/dir", 
      "o": "addr=10.10.10.10,rw", 
      "type": "nfs" 
     }, 
     "Scope": "local" 
    } 
] 

:あなたが名前付きのボリュームを作成しているよう

$ docker volume create foo 

$ docker volume inspect foo 
[ 
    { 
     "CreatedAt": "2018-02-18T12:10:51-05:00", 
     "Driver": "local", 
     "Labels": {}, 
     "Mountpoint": "/home/var-docker/volumes/foo/_data", 
     "Name": "foo", 
     "Options": {}, 
     "Scope": "local" 
    } 
] 
関連する問題