LoginSignup
25
22

More than 5 years have passed since last update.

Docker MachineでDドライブなどUsers以外を自動マウントする

Last updated at Posted at 2016-03-22

一回忘れたのでメモ。

Docker Machineはboot2docker.isoから起動するので、docker-machine sshして中のファイルを弄ろうとしてもMachineを再起動すると消えてしまう。
しかしホストのdisk.vmdk/mnt/sda1にマウントされており、その内部は保存される。
そして/var/lib/boot2docker//mnt/sda1/var/lib/boot2docker/へのシンボリックリンクで、その中にbootlocal.shを置くとDocker Machineの起動時、初期化の最後に実行してくれる

つまりどうするの

VirtualBoxのdefaultマシンの共有フォルダ設定でD:\Hogeなどをd/Hogeなどとして追加した上でdocker-machine sshして/var/lib/boot2docker/bootlocal.shに以下のように書く。

bootlocal.sh
mkdir -p /d/Hoge
mount -t vboxsf -o defaults,iocharset=utf8,uid=1000,gid=50 d/Hoge /d/Hoge

これでDocker Machineの起動時にD:\Hogeが自動マウントされ、そこ以下ならボリュームとしてコンテナにマウントできるようになる。

試してないから勘だけど、共有フォルダ名(d/Hoge)はたぶん何でも良いと思うけどマウント先(/d/Hoge)のディレクトリ名はマウント元(D:\Hoge)と合わせないといけない気がするので注意。

ちなみに、Usersをマウントする設定は/etc/rc.d/vboxに書かれている。

25
22
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
25
22