ボリュームの操作に関する Dockerドキュメントで説明されているように、データのみのコンテナーが実際に実行されているかどうかに関係なく、他の複数のコンテナーにマウントできるボリュームを提供する、いわゆるデータのみのコンテナーの概念があります。
基本的に、これは素晴らしいですね。しかし、私には理解できないことが1つあります。
これらのボリューム(ドキュメントに記載されているように、移植性の理由でホスト上のフォルダーに明示的にマッピングされていない)は、Dockerによってホストの内部フォルダー(/var/docker/volumes/…
)に作成および管理されます。
そのようなボリュームを使用していて、それをあるホストから別のホストに移行する必要がある場合-ボリュームを移植するにはどうすればよいですか?AFAICSには一意のIDがあります-ボリュームとそれに対応するデータ専用コンテナーを新しいホストにコピーするだけでよいですか?コピーするファイルを見つけるにはどうすればよいですか?または、まだ発見していないDockerに組み込まれているサポートはありますか?
docker run --volumes-from <data container> ubuntu tar -cO <volume path> | gzip -c > volume.tgz
これは、ボリュームの実装の詳細に依存しません。2番目のマシンでtarを使用してデータをインポートします。