2016-05-10 9 views
11

CI-CDには、(テストが成功した場合)最新のものにステージングイメージをタグ付けするロジックがあります。これはレジストリv1で機能しました。dockerレジストリで画像にタグを付ける方法

がv2 apiに移動しました。レジストリ内の既存の画像にタグを追加する方法が文書でわかりません。ステージング画像の「マニフェスト」を得ることができるステップですタグを追加してhttp-postする方法がわからない は、以下の入力を送信しようとした

  1. "タグ": "ステージング"、 "最新"、

  2. "タグ": "ステージング"、 "最新の"]、 より

    { "SCHEMAVERSION":1、 "名前": "configservice"、 "タグ": "ステージング"、 "アーキテクチャ": "AMD64"、 "fsLayers":[...

答えて

5

マニフェストスキーマのバージョン2をサポートしドッカーレジストリを持っている場合は、あなただけのマニフェストをアップロードすることができます。これは、あなたの質問に直接答えではありませんが、私はいつも次のことを行っている...

docker pull myimage:staging 
docker run myimage:staging test 
docker tag myimage:staging myimage:release 
docker push myimage:release 
+2

これは間違いなく有効な解決策ですが、ドッキングするバイナリを必要とし、おそらくルートとして実行している可能性があります。また、イメージのダウンロードが必要なため、かなりの時間がかかることがあります。 – wheleph

+3

質問に基づいて、画像を検証して検証するためのテストを実行しています。そのため、CIマシンには既にビルドまたはダウンロードされている必要があります。これは、「テスト」ステップがないという追加の懸念を招くことはありません(2回目のドッカープッシュからの遅れだけで、再タグ付けの場合にはかなり速いです)。 –

9

新しいタグの下にある既存の画像の

たとえば、最新バージョンのbusyboxイメージにタグを付けたいとします。手順は次のようになります。

{ 
    "schemaVersion": 2, 
    "mediaType": "application/vnd.docker.distribution.manifest.v2+json", 
    "config": { 
     "mediaType": "application/octet-stream", 
     "size": 1459, 
     "digest": "sha256:2b8fd9751c4c0f5dd266fcae00707e67a2545ef34f9a29354585f93dac906749" 
    }, 
    "layers": [ 
     { 
     "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 
     "size": 667590, 
     "digest": "sha256:8ddc19f16526912237dd8af81971d5e4dd0587907234be2b83e249518d5b673f" 
     } 
    ] 
} 

アップロード:

ここ
curl '<registry_url>/v2/mybusybox/manifests/latest' \ 
-H 'accept: application/vnd.docker.distribution.manifest.v2+json' \ 
> manifest.json 

は、マニフェストがどのように見えるかだ(2されたSCHEMAVERSIONに注意してください):

は、既存のマニフェストをダウンロード新しいタグの下に現れます:

curl -XPUT '<registry_url>/v2/mybusybox/manifests/new_tag' \ 
-H 'content-type: application/vnd.docker.distribution.manifest.v2+json' \ 
-d '@manifest.json' 

詳細なステップバイステップガイドはこちらpostです。

+3

ウェブサイト下がる - http://meta.stackexchange.com/questions/8231/are-answers-that-just-contain-links-他のどこでも - good-gans-answers – kichik

関連する問題