shimgo
9/13/2016 - 12:22 PM

Data volume container からファイルを取り出す

Data volume container からファイルを取り出す

##前提 取り出したいファイルが存在しているコンテナにData volume containerのパスをマウントしていること。

##コマンド

docker run -it --volumes-from [データボリュームコンテナ名] -v [取り出したファイルを書き出すローカルのパス]:[一時コンテナのデータボリュームパス] busybox cp -R [取り出したいファイルのパス] /[一時コンテナのデータボリュームパス]

##例 データボリュームコンテナ datastore の /home/developer フォルダをローカルのカレントディレクトリ /volumes/datastore フォルダに書き出す場合のコマンドは以下の通り。

docker run -it --volumes-from datastore -v $(pwd)/volumes/datastore:/backup busybox cp -R /home/developer /backup

###解説 --volumes-from datastore によってデータボリュームと接続した一時コンテナでコピーコマンドを実行する。
-v $(pwd)/volumes/datastore:/backup とすることで一時コンテナの/backupをローカルに接続し、ファイルを/backupに置くことでローカルから見られるようにする。