大量のデータを 使いたくなった時 USB-HDD を docker ホストに 追加して bind mount したくなったとき 注意することがある。
横着せずに ひとつづつ 直接 mount しよう。
20TBくらい 必要に なったので 8TB の USB-HDD を Dockerホストに 追加するとき
ストライビングするまでもないので ひとつづつ mount したとする。
例えば docker ホストで
mkdir /USB
mount -t ntfs /dev/sdd1 /USB/USB_d
mount -t ntfs /dev/sde1 /USB/USB_e
mount -t ntfs /dev/sdf1 /USB/USB_f
と マウントしたとして
touch /USB/USB_d/mytest.txt
と USB-HDD に ファイルを 作成しておいても
docker run -it -v /USB:/USB ubuntu /bin/bash
と コンテナを 起動したときに
コンテナ上で ファイルを 参照しようとすると
> ls /USB/USB_d/mytest.txt
ls: cannot access '/USB/USB_d/mytest.txt': No such file or directory
と エラーする
bind mount が 参照しているストレージを超えて ホスト上で mount されている その先へ アクセスできないんだ(と 思う)
なので
docker run -it -v /USB/USB_d:/USB/USB_d -v /USB/USB_e:/USB/USB_e -v /USB/USB_f:/USB/USB_f ubuntu /bin/bash
それぞれ bind mount しなければならない