Amazon ECR でのイメージの再タグ付け - Amazon ECR

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

Amazon ECR でのイメージの再タグ付け

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

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

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

    注記

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

    aws ecr put-image --repository-name amazonlinux --image-tag 2017.03 --image-manifest "$MANIFEST"
  3. 新しいイメージタグがイメージにアタッチされていることを確認します。次の出力では、イメージに latest2017.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
  1. を使用してGet-ECRImageBatchcmdletイメージの説明を取得し、再タグ付けして環境変数に書き込みます。この例では、リポジトリ amazonlinux 内の latest タグ付きイメージが環境変数 $Image に書き込まれます。

    注記

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

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

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

    Write-ECRImage -RepositoryName amazonlinux -ImageManifest $Manifest -ImageTag 2017.09
  4. 新しいイメージタグがイメージにアタッチされていることを確認します。次の出力では、イメージに latest2017.09 のタグが付けられています。

    Get-ECRImage -RepositoryName amazonlinux

    出力は次のとおりです。

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