Amazon ECR
ユーザーガイド (API バージョン 2015-09-21)

イメージにもう一度タグを付ける

Docker Image Manifest V2 Schema 2 のイメージでは、put-image コマンドの --image-tag オプションを使用して、既存のイメージにもう一度タグを付けることができます。Docker でイメージをプルまたはプッシュしなくても、もう一度タグを付けることができます。大きなイメージの場合、このプロセスにより、イメージにもう一度タグを付けるために必要なネットワーク帯域幅と時間がかなり節約されます。

イメージにもう一度タグを付けるには (AWS CLI)

AWS CLI を使用してイメージにもう一度タグを付けるには

  1. batch-get-image コマンドを使用して、イメージを再タグ付けして環境変数に書き込むためのイメージマニフェストを取得します。この例では、レポジトリ amazonlinux でタグ latest を付けたイメージのマニフェストが、環境変数 MANIFEST に書き込まれます。

    MANIFEST=$(aws ecr batch-get-image --repository-name amazonlinux --image-ids imageTag=latest --query 'images[].imageManifest' --output text)
  2. put-image コマンドの --image-tag オプションを使用して、イメージマニフェストを新しいタグで Amazon ECR に配置します。この例では、イメージには 2017.03 というタグが付きます。

    注記

    使用している AWS CLI のバージョンで --image-tag オプションが使用できない場合は、最新バージョンにアップグレードします。詳細については、『AWS Command Line Interface ユーザーガイド』の「AWS コマンドラインインターフェイスのインストール」を参照してください。

    aws ecr put-image --repository-name amazonlinux --image-tag 2017.03 --image-manifest "$MANIFEST"
  3. 新しいイメージタグがイメージにアタッチされていることを確認します。出力ウィンドウで、イメージにはタグ latest および 2017.03 が付いています。

    aws ecr describe-images --repository-name amazonlinux

    出力:

    {
        "imageDetails": [
            {
                "imageSizeInBytes": 98755613,
                "imageDigest": "sha256:8d00af8f076eb15a33019c2a3e7f1f655375681c4e5be157a2685dfe6f247227",
                "imageTags": [
                    "latest",
                    "2017.03"
                ],
                "registryId": "aws_account_id",
                "repositoryName": "amazonlinux",
                "imagePushedAt": 1499287667.0
            }
        ]
    }
イメージにもう一度タグを付けるには (AWS Tools for Windows PowerShell)

AWS Tools for Windows PowerShell を使用してイメージにもう一度タグを付けるには

  1. Get-ECRImageBatch コマンドレットを使用して、もう一度タグを付けるイメージの説明を取得し、環境変数にそれを書き込みます。この例では、レポジトリ amazonlinux でタグ latest を付けたイメージが、環境変数 $Image に書き込まれます。

    注記

    システムで Get-ECRImageBatch コマンドレットを使用できない場合は、AWS Tools for Windows PowerShell ユーザーガイド の「AWS Tools for Windows PowerShell のセットアップ」を参照してください。

    $Image = Get-ECRImageBatch -ImageId @{ imageTag="latest" } -RepositoryName amazonlinux
  2. $Manifest 環境変数にイメージのマニフェストを書き込みます。

    $Manifest = $Image.Images[0].ImageManifest
  3. Write-ECRImage コマンドレットの -ImageTag オプションを使用して、イメージマニフェストを新しいタグで Amazon ECR に配置します。この例では、イメージには 2017.09 というタグが付きます。

    Write-ECRImage -RepositoryName amazonlinux -ImageManifest $Manifest -ImageTag 2017.09
  4. 新しいイメージタグがイメージにアタッチされていることを確認します。出力ウィンドウで、イメージにはタグ latest および 2017.09 が付いています。

    Get-ECRImage -RepositoryName amazonlinux

    出力:

    ImageDigest                                                             ImageTag
    -----------                                                             --------
    sha256:359b948ea8866817e94765822787cd482279eed0c17bc674a7707f4256d5d497 latest
    sha256:359b948ea8866817e94765822787cd482279eed0c17bc674a7707f4256d5d497 2017.09