2017-11-29 17 views
1

ドッカーのボリュームを作成し、特定のコンテナが起動する直前にデータを入れる方法を探しています。ドッカーのコンテナが始まる前に構成にボリュームを注入する

私はコンテナを変更したくありません。私はドッカーハブからまっすぐなバニラコンテナを使用したいと思います。

アイデア? :-) THXは事前に!

UPDATE

私はこのすべてがコンポーズファイルで行わなければならないことは言及しませんでした。 手作業で行うと、コンテナ注入コンテナが完了するのを待つことができます...

+0

あなたが特定の問題がここにあるものを明確にすることはできますか?ここでの直線アプローチは、必要なすべてのファイルをホストディレクトリに照合し、そのファイルを '-v'フラグでコンテナにマウントすることです。 –

+0

THX!私は私の質問を更新しました。 – eventhorizon

答えて

3

絶対に!ボリュームをあらかじめ作成しておいて(Ubuntuのような基本OSは素晴らしい)、データを追加してください。

は内にこれを行います。

docker run --rm -it --name ubuntu_1 -v test_volume:/app ubuntu /bin/sh 

は、いくつかのデータを追加します。

docker volume create test_volume 

は、あなたがデータを追加することができインスタンスに接続します。

ボリュームを作成します。容器;あなたは以前のコマンドから入っています。 タッチ/アプリ/ MY_FILE

出口コンテナ:

exit 

があなたの新しいコンテナにボリュームをアタッチ:もちろん

、あなたの本当のイメージ名でubuntuを交換してください。

docker run --rm -it --name ubuntu_2 -v test_volume:/app ubuntu /bin/sh 

データを確認している。

~> ls app/ 
    my_file 
+0

THX!私は質問を更新しました。これはdocker-composeファイルで行う必要があります。 – eventhorizon

+0

@eventhorizo​​n作曲者ファイルでボリュームを作成してシードすることはできません。あらかじめ作成してシードしておき、作成ファイルに添付することができます。作成ファイルのボリューム名に接頭辞があるかもしれないことを覚えておいてください。 –

関連する問題