3

2つのボリュームを持つファイルからdockerイメージ(mybase)を作成しました

# set volume mount points for installation and home directory
VOLUME ["/usr/local/data", "/var/local/data"]

今、私はそれをプルできるように、そのデータをイメージの一部として持つ本番用の新しいイメージを作成したいと考えています。しかし、そのデータにアクセスする方法がわかりません。

こんなことがしたい。Dockerfile for prodこれは、現在からイメージを作成する新しいものになります

FROM mybase
ADD /usr/local/data:/usr/local/data

しかし、そのディレクトリはホスト上にないため、追加する方法がわかりません

4

2 に答える 2

5

データの性質によっては、画像の一部として表示される場合もあります。そのような場合、これらのファイルを画像と一緒に持ち運ぶことができます。これを、必要なファイルにアクセスできるホスト (例: CI ビルド ノード) でビルドされる特定のビルド用のベース イメージとイメージとして構成できます。

FROM mybase
ADD <source of installation> /usr/local/data
ADD <source of the home data> /var/local/data

この新しいイメージ (ビルドごとにバージョン管理される可能性があります) は、 のコンテンツとともにターゲット環境にプルされます/usr/local/data/var/local/data

環境 (本番) で実行している場合でも、必要に応じてデータ コンテナー手法を使用できます。

docker run --it -v /usr/local/data -v /var/local/data --name my_app_data_container <my_repo>/<my_app>:<build> /bin/false
docker run -d --volumes-from my_app_data_container --name my_app_daemon <my_repo>/<my_app>:<build>
于 2015-01-25T23:24:27.143 に答える