2016-06-01 18 views
2

ドッカーハブに3つのイメージを持つユーザーリポジトリがあるとします。画像はA,BCとタグ付けされています。ここにはCが私の最新タグです。dockerhubから最新のイメージを引き出す

これらのタグはわかりません。 docker pull user/imageを実行すると、これは私にはTag latest not found in repository docker.io/user/imageというエラーが表示されます。最新のタグ(この場合はC)でイメージをプルするにはどうすればよいですか?

答えて

4

はい、私は絶対に同意します:最新のタグは混乱しています。最新のタグは、必ずしも最新のイメージを指しているとは限りません。のは、見てみましょう:

1)あなたは、タグ名を指定せずに画像を引くと、ドッカーは画像を引くしようとする「最新」

2をタグ付き)あなたのプッシュ操作前の画像にタグを付けるしない場合レジストリにDockerが自動的に最新のタグを与えます

3)あなたのイメージにタグをつけて、それがあなたのやっているように聞こえると、Dockerは何もタグ付けしません。手動で最新のタグを適用する必要があります

「最新の」タグは、代わりに「デフォルトの」タグでなければならず、タグ名が指定されていない場合はレジストリから引き出されるデフォルトのイメージとして理解する必要がありますプルコマンドで

curl -s -S "https://registry.hub.docker.com/v2/repositories/repo/image/tags/" | jq '."results"[]["name"]'は私の中のすべてのタグのリストが表示されます:私は私の質問への答えを得たと思う How to create named and latest tag in Docker?

0

複数のタグを適用する方法の詳細については、この回答を参照してください。ドッカーハブリポジトリ。私はその後、sed -n 1pでこれを簡単にパイプして、最新のコミットを得ることができます。

2

「最新の」タグを考える方法の1つは、gitの「マスター」タグに似ています。実際、私は彼らがそれをそれに呼ぶことを望みます!

ブランチを指定せずにgit repoをクローンすると、最近のブランチで更新がプッシュされている可能性がありますが、 'master'ブランチが表示されます。

あなたはドッカーイメージを引く場合は、Gitのレポにプッシュせずにいることを、他の画像が大きな違いで

+1

:-)最近になって他のタグにプッシュされている場合でも、「最新の」タグを取得しますタグを指定すると自動的にマスターのHEADになります。 – tworabbits

+1

しかしgitとは違って、マスターから再び「プル」すると、最後に引っ張ってから変更を受け取ります.Dockerから最新のものを取り出し、すでに「最新のもの」を持っていれば何も変わりません。 – john

関連する問題