2016-08-22 5 views
0

mavenがSNAPSHOTバージョン用に提供しているのと同じ仕組みを実現しようとしています。 基本的には、私がDockerfileで開発したときはいつでも、プライベートレジストリに一時的なバージョンを作成したいと思っています。Docker開発版/スナップショット

タグを作成して強制的にこのタグを押すことはできましたが、指定したタグのレジストリに1つのバージョンを保存したいと思います。

DockerイメージAがFROM B(1.2.SNAPSHOTなど)に依存する場合、最新の1.2.xタグが取得されます。

imageバージョンには、実際に達成しようとしている特別なキーワードがありますか?これは十分に明確である

希望:)

+0

わかりましたかわかりません。例えば、タグ「1.1.1」、「1.1.2」、「1.1.3」を持っていて、すでにいくつかのマイナーバージョンを持つ新しいメジャーバージョン「1.2」を持っています。そして、もしあなたがバージョン1.1で何か問題を見つけたら、タグ '1.1.4'(それを" patch "と呼ぶ)で新しいバージョンを作りたいと思っていて、それ以降のすべてのメジャーバージョン(' 1.2。 'この "パッチ"の影響を受けますか? – oakymax

+0

ここでの正しい答えは、各ビルドを '1.1.x'と' 'という名前のタグで2回ずつプッシュすることだと思います。 '1.1.x'は決して変更されませんが、' 'は変更されます。 – Matthew

答えて

0

私はそれらを使用していなかったが、Mavenのスナップショットは開発バージョンを示すために使用されているように聞こえます。その結果、新しいバージョンは常にチェックされ、フェッチされます。

ドッカーで同様の動作をするには、各ビルドで新しいベースイメージを確認する必要があると思います。これはドッカービルドのオプションです:--pull

docker build --pull -t myimage . 
+0

あなたが正しいです、スナップショットは開発のベリサインです。ただし、リモートレジストリ/リポジトリから必ず取得されるわけではありません。リモートソースが新しいバージョンの場合にのみバージョンが取得される –

+0

私のテストでは '--pull'は同じように動作します - ローカルバージョンが最新の場合はダウンロードをスキップします。 –

関連する問題