このドキュメントで説明されているソフトウェアはサポートされていないか、拡張サポートが提供されています。
現在サポートされているリリースにアップグレードすることをお薦めします。
docker runの-vオプションを使用して、データ・ボリューム・コンテナとホストとの間でボリューム・データをコピーできます。 たとえば、同じデータ・ボリューム・コンテナにリストアしたり、別のデータ・ボリューム・コンテナにコピーしたりできるように、データをバックアップする場合があります。
この項の各例では、Dockerがデータ・ボリューム・コンテナ・イメージ(mymod/dvc:v1
: 4.8項「データ・ボリューム・コンテナの作成と使用方法」を参照)の2つのインスタンスを実行していることを前提としています。 これらのコンテナを起動するには、次のコマンドを使用します。
#docker run -d --name dvc1 mymod/dvc:v1
#docker run -d --name dvc2 mymod/dvc:v1
データ・ボリュームからホストにデータをコピーするには、次のように、別のコンテナからボリュームをマウントし、cpコマンドを使用してデータをホストにコピーします。
[root@host ~]#docker run --rm -v /var/tmp:/host:rw oraclelinux:6
\--volumes-from dvc1 cp -r /var/www/html /host/dvc1_files
コンテナはホスト・ディレクトリ/var/tmp
を/host
として読取り/書込み可能でマウントし、すべてのボリューム(dvc1
がエクスポートする/var/www/html
を含む)をマウントして、/var/www/html
以下のファイル階層を、ホスト上の/var/tmp/dvc1_files
に対応する/host/dvc1_files
にコピーします。
dvc1
のデータのバックアップをホストから別のデータ・ボリューム・コンテナdvc2
にコピーするには、次のようなコマンドを使用します。
[root@host ~]#docker run --rm -v /var/tmp:/host:ro --volumes-from dvc2
\oraclelinux:6 cp -a -T /host/dvc1_files /var/www/html
コンテナはホスト・ディレクトリ/var/tmp
を/host
として読取り専用でマウントし、dvc2
によってエクスポートされたボリュームをマウントして、/host/dvc1_files
以下のファイル階層(ホスト上の/var/tmp/dvc1_files
)を、dvc2
がエクスポートするボリュームに対応する/var/www/html
にコピーします。
次のように、tarなどのコマンドを使用して、データを1つのアーカイブ・ファイルとしてバックアップおよびリストアすることも可能です。
[root@host ~]#docker run --rm -v /var/tmp:/host:rw --volumes-from dvc1
\oraclelinux:6 tar -cPvf /host/dvc1_files.tar /var/www/html
/var/www/html/ /var/www/html/file1.html /var/www/html/file2.html /var/www/html/index.html [root@host ~]#ls -l /var/tmp/dvc1_files.tar
-rw-r--r--. 1 root root 10240 Aug 31 14:37 /var/tmp/dvc1_files.tar [root@host ~]#docker run --rm -i -t --name guest -v /var/tmp:/host:ro
\--volumes-from dvc2 oraclelinux:6 /bin/bash
[root@guest ~]#rm /var/www/html/*.html
[root@guest ~]#ls -l /var/www/html/*.html
total 0 [root@guest ~]#tar -xPvf /host/dvc1_files.tar
var/www/html/ var/www/html/file1.html var/www/html/file2.html var/www/html/index.html [root@guest ~]#ls -l /var/www/html
total 12 -rw-r--r--. 1 root root 35 Aug 30 09:02 file1.html -rw-r--r--. 1 root root 35 Aug 30 09:03 file2.html -rw-r--r--. 1 root root 35 Aug 30 09:03 index.html [root@guest ~]#exit
exit [root@host ~]#
この例では、guest
という名前の一時的な対話型コンテナを使用して、アーカイブのコンテンツをdvc2
に抽出します。