【Docker】Docker Toolbox ローカルのフォルダをコンテナにマウントする

docker run...の時に「-v {ローカルのフォルダパス}:{コンテナ側のフォルダパス}」でマウントするやり方。Docker for Windowsの場合はそのまま記述するだけだけど、Docker Toolboxを使ってる時は以下2段階必要。

(1) ローカルのフォルダをVirtualBox上のdocker-machineにマウント
(2) docker-machineからコンテナにマウント

(1) ローカルのフォルダをVirtualBox上のdocker-machineにマウント

(1.1) VirtualBoxマネージャーを開き、対象のマシン上(マシン名:通常default)で右クリック→「設定」
f:id:daylambsbecomelions:20190623201816p:plain
(1.2) 「共有フォルダ」メニューから共有フォルダ部分をダブルクリック
f:id:daylambsbecomelions:20190623202415p:plain
(1.3) 「フォルダーのパス」でマウントしたいローカルフォルダを選択。docker-machine側の「フォルダー名」は特に指定がなければデフォルトの「host」のままでOK。
f:id:daylambsbecomelions:20190623202552p:plain
(1.4) docker-machineをstartさせ、「host」フォルダに指定したローカルのフォルダがマウントされていることを確認

(2) docker-machineからコンテナにマウント

(2.1) こちらはシンプルにマウントした「host」フォルダを「マウント元」にしてdocker runコマンド

docker run -d --privileged -v {マウント元(docker-machine側)フォルダパス}:{マウント先(コンテナ側)フォルダパス} --name {コンテナ名} {イメージ名}
(例) docker run -d --privileged -v /host/src:/var/www/html --name web-server centos

(2.2) コンテナに接続してマウントできてることを確認