Windows + VirtualBox で構築した Docker ホストマシンのストレージを移動する
docker-machine を使って Windows版VirtualBox 上に Docker のホストマシンを作成した場合、デフォルトで
C:\Users\<ユーザー名>\.docker\machine\machines\<マシン名> 以下に仮想ディスクファイル (.vmdk) が作られます。
自分の環境では C ドライブの容量が 128GB と少なく、コンテナイメージを作るには少々心許なかったので、別ドライブに移動させてみました。
移動させたストレージは↓こちらの手順で作成した Docker ホストマシンになります。
仮想マシンの停止
docker ホストマシンが停止しているか確認します。
$ docker-machine ls
NAME ACTIVE DRIVER STATE URL SWARM
dev * virtualbox Stopped
起動中の場合は下記のコマンドで停止します。
$ docker-machine stop dev
disk.vmdk の移動
今回は D ドライブに移動させます。
D:\>mkdir D:\docker\machine\machines\dev D:\>copy C:\Users\takaya030\.docker\machine\machines\dev\disk.vmdk D:\docker\machine\machines\dev
.vbox ファイルの編集
C:\Users\<ユーザー名>\.docker\machine\machines\dev\dev\dev.vbox に設定されている disk.vmdk ファイルのパスを変更します
--- dev.vbox.orig 2015-06-14 18:45:04 +0900 +++ dev.vbox 2015-06-21 12:01:38 +0900 @@ -9,7 +9,7 @@ <Machine uuid="{4a5d1ce3-c935-4150-8345-7f886a384544}" name="dev" OSType="Linux26_64" snapshotFolder="Snapshots" lastStateChange="2015-06-14T09:45:03Z"> <MediaRegistry> <HardDisks> - <HardDisk uuid="{2abf1ae5-c4ce-4ba4-b701-1e140e92eeb2}" location="C:/Users/takaya030/.docker/machine/machines/dev/disk.vmdk" format="VMDK" type="Normal"/> + <HardDisk uuid="{2abf1ae5-c4ce-4ba4-b701-1e140e92eeb2}" location="D:/docker/machine/machines/dev/disk.vmdk" format="VMDK" type="Normal"/> </HardDisks> <DVDImages> <Image uuid="{d811db4e-bcd3-404d-8f01-5de4b1aa1f8a}" location="C:/Users/takaya030/.docker/machine/machines/dev/boot2docker.iso"/>
仮想マシンの起動
$ docker-machine start dev