

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

# でのコンテナ製品の新しいバージョンの追加 AWS Marketplace
<a name="container-add-version"></a>

 AWS Marketplace 販売者は、コンテナ製品の新しいバージョンを追加したり、バージョンを管理したり、バージョン情報を更新したりできます。製品には、その使用期間中に複数のバージョンがある場合があります。各バージョンには、そのバージョン固有のコンテナイメージセットがあります。以下のトピックでは、コンテナ製品の製品バージョンを管理する方法について説明します。

**注記**  
製品 ID と製品の料金を設定するまで、製品にバージョンを追加できません。これらの手順の詳細については、「[ステップ 1: コンテナ製品の製品 ID と製品コードを作成する](container-product-getting-started.md#create-initial-container-product)」を参照してください。

**Topics**
+ [ステップ 1: リポジトリを追加する](#add-repositories)
+ [ステップ 2: コンテナイメージとアーティファクトをリポジトリにアップロードする](#upload-resources)
+ [ステップ 3: コンテナ製品に新しいバージョンを追加する](#add-new-version)
+ [ステップ 4: バージョン情報を更新する](#container-product-updating-version)
+ [Amazon EKS アドオンのバージョンを制限する](#restriciting-version-eks-addon)

## ステップ 1: リポジトリを追加する
<a name="add-repositories"></a>

製品のコンテナイメージやその他のアーティファクトは、 AWS Marketplaceのリポジトリに保存されます。通常、必要なアーティファクトごとに 1 つのリポジトリを作成しますが、リポジトリにはアーティファクトの複数のバージョンを (異なるタグで) 保存できます。

**注記**  
製品デプロイ内のすべてのイメージは、 AWS Marketplace リポジトリのイメージを使用する必要があります。

次の手順では、必要なリポジトリを に追加する方法について説明します AWS Marketplace。

**リポジトリを追加するには**

1. [AWS Marketplace 管理ポータル](https://aws.amazon.com/marketplace/management/) にサインインします。

1. **[製品]** メニューで **[サーバー]** を選択します。

1. **[サーバー製品]** タブで、変更する製品を選択し、**[変更をリクエスト]** ドロップダウンから **[リポジトリを追加]** を選択します。

1. 作成するリポジトリの名前を入力します。複数の新しいリポジトリを作成する場合:
   + 追加するリポジトリごとに **[新しいリポジトリの追加]** を選択します。
   + 一意の名前を付けます。選択する一意の名前は、販売者アカウントのすべての製品にまたがっている必要があります。
**注記**  
リポジトリは次のような構造になります。`<repositoryID>.dkr.ecr.us-east-1.amazonaws.com/<sellerName>/<repositoryName>`。リポジトリにアイテムを追加すると (以下の手順で)、アイテムにはタグが付けられ、この構造になります。`<repositoryID>.dkr.ecr.us-east-1.amazonaws.com/<sellerName>/<repositoryName>:<tag>`。  
`repositoryID` は の内部 ID です AWS Marketplace。
`sellerName` は、販売者アカウント用に作成した名前に基づいています。販売者表示名がリポジトリプレフィックス`sellerName`に無効な を生成すると、AWS Marketplace は販売者名の代わりに UUID (Universally Unique Identifier) を自動的に置き換えます。リポジトリ名の UUID プレフィックスを変更するには、AWS Marketplace オペレーションチームにお問い合わせください。
`respositoryName` はこのステップで定義されます。
`tag` は、アーティファクトをリポジトリにアップロードするときに設定されます。

1. **[送信]** を選択します。

**注記**  
製品ごとに最大 70 個のリポジトリを持つことができます。

新しいリクエストが作成され、**[リクエスト]** タブに表示されます。完了すると、数分以内に、作成したリポジトリにコンテナイメージやその他のアーティファクトを追加できるようになります。

## ステップ 2: コンテナイメージとアーティファクトをリポジトリにアップロードする
<a name="upload-resources"></a>

**コンテナイメージとアーティファクトをリポジトリにアップロードするには**

1. [AWS Marketplace 管理ポータル](https://aws.amazon.com/marketplace/management/) にサインインします。

1. **[製品]** メニューの **[サーバー]** を選択します。

1. **[サーバー製品]** タブから、変更する製品を選択します。

1. **[変更をリクエスト]** ドロップダウンから **[リポジトリを追加]** を選択します。

1. **[既存のリポジトリを表示]** を選択します。

1. アップロードするリポジトリを選択します。

1. **[プッシュコマンドを表示]** を選択すると、Docker コンテナイメージと Helm チャートをそのリポジトリにプッシュするために使用できるコマンドを含む手順一覧が開きます。

   コンテナイメージやその他のアーティファクトをリポジトリにプッシュする方法に関する一般的な情報については、「*Amazon Elastic Container Registry ユーザーガイド*」の「[イメージのプッシュ](https://docs.aws.amazon.com/AmazonECR/latest/userguide/image-push.html)」を参照してください。
**注記**  
`docker pull` または `docker push` を呼び出すときに、次の Amazon Elastic Container Registry (Amazon ECR) API オペレーションを使用できます。  
`DescribeImages` - これを使用して、リポジトリ内のイメージに関するメタデータを確認します。
`GetAuthorizationToken` - アーティファクトをリポジトリにアップロードする前に認証を行い、`docker pull` または `docker push` コマンドを使用してください。
`ListImages` - プッシュしたイメージのリストを表示する場合に使用します。

1. リストされているコマンドを使用して、必要なアーティファクトをローカルリポジトリから製品の AWS Marketplace リポジトリにプッシュします。
**注記**  
`push` コマンドで指定した **tag** は、リポジトリにアップロードするアーティファクトのバージョンを区別するために使用されます。アーティファクトが含まれるバージョンに適したタグを使用してください。

1. 使用しているバージョンで必要なコンテナイメージまたはアーティファクトごとに同じ手順を繰り返します。
**注記**  
バージョンには、各配信オプションに最大 50 個のコンテナイメージまたはアーティファクトを含めることができます。配信オプションの詳細については、以下の手順を参照してください。

アーティファクトをアップロードしたら、製品のバージョンを作成する準備が整います。

**注記**  
コンテナイメージは自動的にスキャンされ、[のコンテナベースの製品要件 AWS Marketplace](container-product-policies.md) を満たしているかどうかが確認されます。詳細については、「[コンテナ製品はセキュリティ上の問題をスキャンします。](container-product-getting-started.md#container-security)」を参照してください。

### 新しい配信オプションの追加
<a name="add-delivery-option"></a>

コンテナ製品の各バージョンには、配信オプションが必要です。配信オプションは、購入者が利用できるデプロイオプションを指定します。以下の配信オプションのいずれかに応じて、適切なアーティファクトをリポジトリにアップロードする必要があります。
+ **コンテナイメージ**配信オプションでは、製品のインストールに必要なすべてのコンテナイメージを、 AWS Marketplace コンソールで作成された Amazon Elastic Container Registry (Amazon ECR) リポジトリにアップロードします。
+ **Helm チャート**配信オプションでは、 AWS Marketplace コンソールで作成された Amazon ECR リポジトリにHelmチャートイメージとコンテナイメージをアップロードします。
+ **Amazon EKS コンソールのアドオン**配信オプションでは、 AWS Marketplace コンソールで作成された Amazon ECR リポジトリにHelmチャートイメージとコンテナイメージをアップロードします。

## ステップ 3: コンテナ製品に新しいバージョンを追加する
<a name="add-new-version"></a>

**注記**  
コンテナに新しいバージョンを追加する際にエラーが発生した場合は、「*AWS Marketplace Catalog API リファレンス*」の「[新しいバージョンの非同期エラーテーブルを追加する](https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/container-products.html#container-add-version)」を参照してください。

**コンテナ製品に新しいバージョンを追加するには**

1. [AWS Marketplace 管理ポータル](https://aws.amazon.com/marketplace/management/) にサインインします。

1. **[製品]** メニューの **[サーバー]** を選択します。

1. **[サーバー製品]** タブで、バージョンを追加する製品を選択します。次に、**[変更をリクエスト]** ドロップダウンから **[新しいバージョンを追加]** を選択します。

1. **[新しいバージョンを追加]** ページで、使用しているバージョンの **[バージョンタイトル]** と **[リリースノート]** を入力します。

1. バージョンの詳細を入力したら、次のステップとして、配信オプションを追加します。配信オプションとは、購入者が製品バージョンからソフトウェアを起動するために使用できる指示と情報のセットです。配信オプションは、購入者へのフルフィルメントオプションと呼ばれます。**
**注記**  
製品は、コンテナイメージが異なる複数のプラットフォーム (Kubernetes および Ubuntu デプロイ) をサポートできます。顧客が製品をセットアップする方法ごとに 1 つの配信オプションを作成できます。1 つの製品に対して最大 4 つの配信オプションを作成できます。

   1. 製品に他のバージョンで既に配信オプションがある場合は、既存のオプションをテンプレートとして使用して、新しいバージョンに配信オプションを追加できます。**[配信オプション]** で、追加する配信オプションをリストから選択します。オプションは、以降のステップの指示に従って編集できます。

   1. 新しい配信オプションを追加するには、**[新しい配信オプション]** を選択します。オプションを追加したら、以下のステップの指示に従って設定します。

1. 配信オプションの配信方法を選択します。配信方法によって、購入者がソフトウェアをどのように起動するかが決まります。
   + **[コンテナイメージ]** 配信オプションの場合、 AWS Marketplace コンソールで作成された Amazon Elastic Container Registry (Amazon ECR) 内のコンテナイメージへのパスを指定します。購入者はコンテナイメージパスを使用してイメージを自分の環境に直接取り込み、ソフトウェアを起動します。
   + **[Helm チャート]** の配信オプションでは、 AWS Marketplace コンソールで作成された Amazon ECR リポジトリ内の Helm チャートへのパスを指定します。購入者はデプロイ環境に Helm チャートをインストールしてソフトウェアを起動します。
   + **Amazon EKS コンソールアドオン**配信オプションの場合、 AWS Marketplace コンソールで作成された Amazon ECR リポジトリの Helm チャートへのパスが指定されます。購入者は、Amazon EKS コンソールまたはネイティブの Amazon EKS アドオン API を使用して、コンテナをインストールし、ソフトウェアを起動します。詳細については、「[Amazon EKS で使用できる Amazon EKS アドオン](https://docs.aws.amazon.com/eks/latest/userguide/eks-add-ons.html#workloads-add-ons-available-eks)」を参照してください。

   1. **[コンテナイメージ]** 配信オプションを追加するには、以下のステップを実行します。

      1. **[コンテナイメージ]** で、製品バージョンのソフトウェアを含むコンテナイメージに Amazon ECR URL を追加します。

      1. **[配信オプションのタイトル]** と **[デプロイオプションの説明]** に、この配信オプションのタイトルと説明を入力します。

      1. **[使用説明書]** に、購入者がソフトウェアを起動した後に使用するのに役立つ詳細情報を入力します。

      1. **[サポート対象のサービス]** で、購入者がソフトウェアを起動できる環境を選択します。

      1. **[デプロイテンプレート]** に、購入者がソフトウェアの起動に使用できるリソースを追加します。各テンプレートのタイトルとリソースの URL を入力します。

   1. **Helm チャート**配信オプションを追加するには、次の手順を実行します。

      1. **Helm チャート**で、購入者がデプロイ環境にインストールする Helm チャートに Amazon ECR URL を追加して、ソフトウェアを起動します。

      1. **[コンテナイメージ]** で、製品バージョンのソフトウェアを含むコンテナイメージに Amazon ECR URL を追加します。

      1. **[配信オプションのタイトル]** と **[デプロイオプションの説明]** に、この配信オプションのタイトルと説明を入力します。

      1. **[使用説明書]** に、購入者がソフトウェアを起動した後に使用するのに役立つ詳細情報を入力します。

      1. **[サポート対象のサービス]** で、購入者がソフトウェアを起動できる環境を選択します。

      1. *オプション －* **[Helm リリース名]** に、Helm チャートをインストールする Kubernetes 名前空間の名前を入力します。

      1. *オプション - ***[Helm インストール名前空間]** に、`helm install` コマンドが使用する Helm リリースの名前を入力します。

      1. *オプション - ***[Kubernetes サービスアカウント名] **に、 AWS Identity and Access Management (IAM) の接続に使用するKubernetes サービスアカウントの名前を入力します。Kubernetes サービスアカウントが、ライセンスや計測などの AWS サービスを呼び出します。

      1. **[パラメータをオーバーライドする]** に、ソフトウェアを起動する Helm CLI コマンドで使用されるパラメータを入力します。これらのパラメータを使用すると購入者は、指定されたデフォルト値をオーバーライドできます。 AWS Marketplace マネジメントコンソールを使用する場合は 15 個のパラメータに制限がありますが、 を使用する場合の制限はありません AWS Marketplace Catalog API。詳細については、「[コンテナベースの製品への新しいバージョンの追加](https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/container-products.html#container-add-version)」を参照してください。
**注記**  
**一部の [パラメータの上書き]** は必須です。Amazon EKS Anywhere の製品では、ライセンスシークレットに `"${AWSMP_LICENSE_SECRET}"` の `DefaultValue` を持つ **[上書きパラメータ]** が必要です。有料製品では、`"${AWSMP_SERVICE_ACCOUNT}"` の `DefaultValue` を持つサービスアカウントの設定に対して 1 つの **[上書きパラメータ]** を指定する必要があります。

      1. コンソール、コマンドラインツール、および API の機密情報をマスクするには、**[パスワードとシークレットを非表示]** を選択します。詳細については、「*AWS CloudFormation ユーザーガイド*」の「[パラメータ](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/parameters-section-structure.html)」にある `NoEcho` パラメータのドキュメントを参照してください。

   1. **Amazon EKS コンソールのアドオン**配信オプションを追加するには、アーティファクトが [Amazon EKS アドオン製品の要件](container-product-policies.md#publishing-eks-add-on) に準拠していることを確認し、次の手順を実行します。
**注記**  
バージョンごとにサポートされる Amazon EKS アドオン配信オプションは 1 つだけです。作業している現在のバージョンが Amazon EKS コンソールで公開されるまで、新しいバージョンを追加することはできません。

      1. **Helm チャート**で、購入者がデプロイ環境にインストールする Helm チャートに Amazon ECR URL を追加して、ソフトウェアを起動します。

      1. **[コンテナイメージ]** で、製品バージョンのソフトウェアを含むコンテナイメージに Amazon ECR URL を追加します。Helm チャート内のすべてのイメージがリストされていることを確認します。

      1. **[配信オプションのタイトル]** と **[デプロイオプションの説明]** に、この配信オプションのタイトルと説明を入力します。

      1. **[可視性]** では、**[選択した制限]** のデフォルト値が維持されます。

      1. **[アドオン名]** に、このアドオンの一意の名前を入力します。入力したアドオン名には、Amazon EKS コンソールに表示される間に販売者の名前が付加されます。

      1. **[アドオンバージョン]** で、このアドオンのインストールまたはアップグレード時に表示されるアドオンのバージョンを入力します。これはフォーマット `major.minor.patch` に従います。

      1. **[アドオンタイプ]** で、ドロップダウンリストからアドオンのカテゴリを選択します。

      1. **[Kubernetes バージョン]** で、アドオンがサポートするすべての Kubernetes バージョンを選択します。

      1. **[アーキテクチャ]** で、アドオンがサポートするプラットフォームアーキテクチャを選択します。オプションは **[AMD64]** と **[ARM64]** です。互換性を最大化するために、両方のアーキテクチャをサポートすることが推奨されます。アドオンが ARM64 デバイスをサポートしていない場合は、製品がすべての商用 AWS リージョンに公開される前に、サポートの追加を希望する日付を指定する必要があります。

      1. **[名前空間]** に、アドオンをインストールする一意の Kubernetes 名前空間を入力します。`default`、`kube-system`、および `kube-public` 名前空間は、サードパーティーのアドオンのインストールではサポートされていません。

      1. **Environment Override パラメータ**では、Amazon EKS アドオンフレームワークから最大 2 つの環境パラメータを選択できます。values.yaml のパラメータ名を、`${AWS_REGION}` および `${AWS_EKS_CLUSTER_NAME}` の環境変数にマッピングできます。

1. 他の配信オプションを追加するには、**[新しい配信オプション]** を選択し、前の手順を繰り返して構成します。

1. [**Submit**] を選択してください。

## ステップ 4: バージョン情報を更新する
<a name="container-product-updating-version"></a>

バージョンが作成されたら、そのバージョンに関連する情報を変更して、更新された情報を購入者に提供すると便利です。例えば、バージョン 1.1 がリリースされた後にバージョン 1.0 を制限する予定であれば、バージョン 1.0 の説明を更新して、購入者をバージョン 1.1 に誘導することができます。バージョン 1.0 が制限される日付を入力してください。バージョン情報は AWS Marketplace 管理ポータルから更新します。

**バージョン情報を更新するには**

1. [AWS Marketplace 管理ポータル](https://aws.amazon.com/marketplace/management/) にサインインします。

1. **[製品]** メニューで **[サーバー]** を選択します。

1. **[サーバー製品]** タブで、変更する製品を選択します。

1. **[変更をリクエスト]** ドロップダウンから **[バージョン情報を更新]** を選択します。

1. **[バージョンを更新]** ページで、更新するバージョンを選択します。

1. 選択したバージョンを更新します。更新できるフィールドは、製品バージョンまたは配信オプションのステータスによって異なります。

   1. すべてのバージョンで、**[リリースノート]** を更新できます。

   1. まだ公開されていないバージョンでは、**[バージョンタイトル]** を更新できます。

   1. 制限されていない配信オプションについては、以下のフィールドを更新できます。
      + **説明**
      + **[使用手順]**
      + **[サポートされるサービス]**

   1. まだ公開されていないバージョンの配信オプションについては、以下のフィールドを更新できます。
      + **[配信オプションタイトル]**
      + **Helm チャート** (**Helm チャート**配信オプションのみ)
      + **コンテナイメージ**
      + **[デプロイリソース]**
      + **アドオン名**
      + **アドオンバージョン**
      + **アドオンタイプ**
      + **Helm チャート URI**
      + **CompatibleKubernetesVersions**
      + **SupportedArchitectures**
      + **名前空間**
      + **EnvironmentOverrideParameters**

   1. 公開されているバージョンの配信オプションについては、**SupportedArchitectures** を更新できます。

1. [**Submit**] を選択してください。

1. リクエストが **[リクエスト]** タブに **[レビュー中]** ステータスで表示されていることを確認します。

リクエストのステータスは、[サーバー製品](https://aws.amazon.com/marketplace/management/products/server)ページの **[リクエスト]** タブからいつでも確認できます。

## Amazon EKS アドオンのバージョンを制限する
<a name="restriciting-version-eks-addon"></a>

アドオンとして公開されているコンテナ製品のバージョンを制限するには、「[AWS Marketplace 管理ポータル](https://aws.amazon.com/marketplace/management/)」の下部にある連絡先を参照して、 AWS Marketplace 運用チームにお問い合わせください。