2016-05-04 30 views
0

コードのリポジトリを構築すると、常に新しいイメージが生成されますが、既存のイメージを置き換える/更新する必要があります。 ソースファイルを変更して同じイメージを再構築するにはどうすればいいですか? コマンドでコンテナイメージを作成しています。画像を合成してドッカー画像を作成し、新しい画像にします。どうして?

 

    $docker-compose up --build 

としての応答は次のとおりです。ここ

 

[email protected]:/var/lib$ docker images 
REPOSITORY  TAG  IMAGE ID   CREATED    SIZE 
nodeapi_www latest  74378f9c5de5  5 seconds ago  684.3 MB 
none   none  d358efc16f16  About an hour ago 684.3 MB 
node   4.4.1  4e2e99ae7d3e  5 weeks ago   643.8 MB 

iが--buildコマンドをアップ構成するドッキングウィンドウを実行する前に、画像は、Webアプリケーションのイメージだったです。その後、画像のリストに孤児の画像が表示されます。

答えて

0

ドッカーの仕組みの性質上、変更を加えた場合、画像はコンテナのように変化しないので、新しい画像が必要になります。

ビルドを行うときに次の操作を行い、古いイメージを削除するのに役立つかどうかを確認してください。

$ docker-compose up --build --remove-orphans 

あなたは変更されている項目は、ボリュームになるようにボリュームを使用して見て、あなたがそれらのファイルのうち1つを変更するたびに再構築する必要はありませんので、多くの画像を持ってしたくない場合。

この例を見るには、https://docs.docker.com/compose/django/を見てください。node.jsではなく、アイデアは同じです。

+0

こんにちはケン、私は '--remove-orphans'で実行しようとしましたが、私は実際に私のために働いていませんでした、私は他の孤児のイメージを持っています。しかし、私はそれも必要だったボリュームのものを感謝します。(手動ですべてを構築するのではなく、自動的にそれぞれの変更を選択する必要があります) –

+0

申し訳ありません。幸運 –

+0

実際にはまだ解決策はありません。ビルドが行われるときはいつも、ドッカーイメージのリストには常に新しいイメージがあります。手動で削除する必要があります。しかし、ありがとう。今私は特定のコンテナのボリュームのコンセプトに入るつもりですが、これはおそらく役に立つでしょう。 –

関連する問題