イメージにもう一度タグを付ける
Docker Image Manifest V2 Schema 2 のイメージでは、put-image コマンドの --image-tag
オプションを使用して、既存のイメージにもう一度タグを付けることができます。Docker でイメージをプルまたはプッシュしなくても、もう一度タグを付けることができます。大きなイメージの場合、このプロセスにより、イメージにもう一度タグを付けるために必要なネットワーク帯域幅と時間がかなり節約されます。
AWS CLI を使用してイメージにもう一度タグを付けるには
-
batch-get-image コマンドを使用して、イメージを再タグ付けしてファイルに書き込むためのイメージマニフェストを取得します。この例では、リポジトリ
amazonlinux
内のlatest
タグ付きイメージのマニフェストがMANIFEST
という名前の環境変数に書き込まれます。MANIFEST=$(aws ecr batch-get-image --repository-name
amazonlinux
--image-ids imageTag=latest
--output json | jq --raw-output --join-output '.images[0].imageManifest') -
put-image コマンドの
--image-tag
オプションを使用して、新しいタグでイメージマニフェストを Amazon ECR に配置します。この例では、イメージには2017.03
というタグが付きます。注記 使用している AWS CLI のバージョンで
--image-tag
オプションが使用できない場合は、最新バージョンにアップグレードします。詳細については、 AWS Command Line InterfaceユーザーガイドのAWS Command Line Interfaceのインストールを参照してください。aws ecr put-image --repository-name
amazonlinux
--image-tag2017.03
--image-manifest "$MANIFEST" -
新しいイメージタグがイメージにアタッチされていることを確認します。次の出力では、イメージに
latest
と2017.03
のタグが付けられています。aws ecr describe-images --repository-name
amazonlinux
出力は次のとおりです。
{ "imageDetails": [ { "imageSizeInBytes": 98755613, "imageDigest": "sha256:8d00af8f076eb15a33019c2a3e7f1f655375681c4e5be157a26EXAMPLE", "imageTags": [ "latest", "2017.03" ], "registryId": "
aws_account_id
", "repositoryName": "amazonlinux", "imagePushedAt": 1499287667.0 } ] }
AWS Tools for Windows PowerShell を使用してイメージにもう一度タグを付けるには
-
Get-ECRImageBatch コマンドレットを使用して、もう一度タグを付けるイメージの説明を取得し、環境変数にそれを書き込みます。この例では、リポジトリ
amazonlinux
内のlatest
タグ付きイメージが環境変数$Image
に書き込まれます。注記 システムで Get-ECRImageBatch cmdlet が使用できない場合は、AWS Tools for Windows PowerShell ユーザーガイドの「AWS Tools for Windows PowerShell のインストール」を参照してください。
$Image = Get-ECRImageBatch -ImageId @{ imageTag="
latest
" } -RepositoryNameamazonlinux
-
$Manifest
環境変数にイメージのマニフェストを書き込みます。$Manifest = $Image.Images[0].ImageManifest
-
-ImageTag
コマンドレットの Write-ECRImage オプションを使用して、イメージマニフェストを新しいタグで Amazon ECR に配置します。この例では、イメージには2017.09
というタグが付きます。Write-ECRImage -RepositoryName
amazonlinux
-ImageManifest $Manifest -ImageTag2017.09
-
新しいイメージタグがイメージにアタッチされていることを確認します。次の出力では、イメージに
latest
と2017.09
のタグが付けられています。Get-ECRImage -RepositoryName
amazonlinux
出力は次のとおりです。
ImageDigest ImageTag ----------- -------- sha256:359b948ea8866817e94765822787cd482279eed0c17bc674a7707f4256d5d497 latest sha256:359b948ea8866817e94765822787cd482279eed0c17bc674a7707f4256d5d497 2017.09