2017-05-03 22 views
1

私はドッカー画像を持っています。ドッカー画像/テストと呼んでいます。私がそれを更新するたびに、私はタグを増やすので、dockerimage/test:1、dockerimage/test:2などとなります。ドッカーの画像/コンテナが更新されない

ローカルマシン上でドッカーを使ってイメージをプルして実行すると、大きな効果があり、イメージに加えた変更を見ることができます。しかし、ドッカーがインストールされたVMもあります。イメージをプルして実行すると、には、以前のバージョンのウェブサイトが表示されます(つまり、ドッカーがそれを言っていてもイメージは更新されていません新しいバージョンをダウンロードしました)。

私は、VM上のイメージに間違ったイメージが実行されているかどうかを知りたいので、VM上のすべてのイメージを削除して新鮮なイメージ(すなわちdockerimage/test:3)を作成し、それ。再び、私のローカルマシン上で正常に動作し、ちょうど私のVM上の古いバージョンを示しています。

ブラウザのキャッシュを消去してファイルを編集したり、新しいレジストリを作成したり、マシンを再起動したりしても差はありません。

この時点で、この画像/コンテナに関連付けられているすべてを削除し、新しいバージョンを取得したいだけです。しかし、ドッカーが何かを保管しているように見えるので、私はできません。

私はdockerが画像を扱う方法について「スマート」であることを知っています。重複した画像、ファイルなどを認識しますが、は強制的に画像の削除を強制して、すべてのファイルを再ダウンロードしますか?

+0

これを忘れているかもしれませんが、安全に作成するには、イメージをドッカーハブにプッシュしてください。 –

+0

「最新の」タグがどのように機能しているか誤解していないか確認してください:[間違ったDockerタグ:最新](https://medium.com/@mccode/the-misunderstood-docker-tag-latest-af3babfd6375) – tgogos

+0

あなたはそのイメージをDockerHubまたはローカルのDockerレジストリにコピーしますか? – kstromeiraos

答えて

0

ここで説明した問題から、新しいイメージで新しいコンテナを作成していないようです。

画像をアップグレードするとただちにrun新しい容器になります。このプロセスはいつでも自動化できます。私はそれをやっている連続展開パイプライン(bitbucket,ansibleまたはjenkins,ansible)を持っています。

+0

私は、新しい画像に基づいて新しいコンテナを作成しています(古いものをあらかじめ削除しています)。しかし、私はこのような愚かな間違いをしていると確信しています。他のアイデア?興味深い。 – WordName

+0

Image IDは、新しいタグごとに変化していますか?古い画像にタグを付け直しているようです。そうでない場合は、 'docker build'操作のデバッグに戻ります。 –

+0

これは役に立ちます。ドッカーをきれいにする[リンク](http://blog.yohanliyanage.com/2015/05/docker-clean-up-after-yourself/) –

0

"--no-cache"でドッカーイメージを取得しようとするべきだと思います。

+0

これはできますか?ドッカーのプル(ドッカープル - ヘルプ)のための助けには何もありませんが、それは私が欲しいもののように聞こえる。 – WordName

+0

@WordName '--no-cache'は' docker build'ではなく 'docker build'用です。 –

+1

謝罪します。これは、Dockerfileを使用してビルドを作成するためのものです。 –

関連する問題