2016-12-12 10 views
0

私はDockerボリュームの周りに私の心を包み込みたいと思っていますが、私はそれを理解するために欠けているものがいくつかあります。Docker Data/Named Volumes

私はenv変数に応じていくつかの初期化を必要とするPythonアプリケーションを持っているとしましょう。私が達成しようとしているのは、"コードのみのイメージ"から実行時にマウントされるコンテナを起動できることです。 メインコンテナのエントリポイントスクリプトは、コード専用コンテナからいくつかのファイルを読み込んで生成します。

私はコード

​​

その後docker create --name code_volume

とドッキングウィンドウ-コンでのコピーを持っているイメージを作成しようとしました:

app: 
    image: python/app 
    hostname: app 
    ports: 
     - "2443:443" 
    environment: 
     - ENV=stuff 
    volumes_from: 
     - code_volume 

私はアプリからエラーが出ますコンテナは/ usr/local/code/app/srcにあるファイルを見つけることができないと言っていますが、code_volumeをbashで実行したときにファイルがそこにあります...

私はアクセス権を変更しようとしましたが、/ bin/trueを追加しましたが(いくつかの例ではそれを見ています)、私は何をしたいのか分かりません。 docker volume createの機能を確認しましたが、後でデータを保存/共有するためのようです。

何が欠けていますか?ボリュームがマウントされる前にエントリポイントスクリプトが実行されていますか?このような場合、フォルダをマウントしたり、すべてのコンテナに1つのコピーを保存したりすることをおすすめしません。私はコンテナをもう一度考えなければならないだろうか?

答えて

0

作成時にcode_volumeコンテナにボリュームを宣言しません。

docker create -v /usr/local/code/app --name code_volume 
関連する問題