メニュー
Amazon Elastic Compute Cloud
Linux インスタンス用ユーザーガイド

AMI を一般公開する

Amazon EC2 では、自分の AMI を他の AWS アカウントと共有できます。すべての AWS アカウントに AMI の起動を許可する (AMI を一般公開する) ことも、特定の少数のアカウントだけに AMI の起動を許可することもできます (「特定の AWS アカウントと AMI を共有する」を参照してください)。お客様の AMI が他の AWS アカウントによって起動されても、お客様に料金は請求されません。AMI を起動するアカウントのみに料金が請求されます。

AMI はリージョンのリソースです。そのため、AMI を共有すると、そのリージョンで利用できるようになります。AMI を他のリージョンで利用できるようにするには、AMI をそのリージョンにコピーし、共有します。詳細については、「AMI のコピー」を参照してください。

AMI を共有するときに重要なデータが公開されないようにするには、「共有 Linux AMI のガイドライン」のセキュリティ考慮事項を読み、推奨アクションに従います。

注記

AMI に製品コードがある場合、それを一般公開することはできません。AMI は、特定の AWS アカウントとのみ共有する必要があります。

すべての AWS アカウントで AMIを共有する (コンソール)

AMI を公開した後、コンソールを使用して同じリージョン内でインスタンスを起動すると、その AMI が [Community AMIs] に表示されます。AMI は、公開してから [Community AMIs] に表示されるまでに、しばらく時間がかかることもあります。また、AMI を非公開にした場合も、[Community AMIs] から削除されるまでにしばらく時間がかかることがあります。

コンソールを使用してパブリック AMI を共有するには

  1. https://console.aws.amazon.com/ec2/) にある Amazon EC2 コンソールを開きます。

  2. ナビゲーションペインで [AMIs] を選択します。

  3. リストから AMI を選択し、[Actions] から [Modify Image Permissions] を選択します。

  4. [Public] を選択し、[Save] を選択します。

すべての AWS アカウントで AMIを共有する (コマンドライン)

各 AMI には、所有者以外でその AMI を使用してインスタンスを起動できる AWS アカウントを制御する launchPermission プロパティがあります。AMI の launchPermission プロパティを変更することで、AMI を一般公開したり (この場合、すべての AWS アカウントに起動許可が与えられます)、あるいは指定した AWS アカウントとのみ AMI を共有したりできます。

AMI の起動許可を持つアカウントのリストにアカウント ID を追加したり、削除したりできます。AMI を一般公開するには、all グループを指定します。パブリック起動許可と明示的起動許可の両方を指定できます。

[To make an AMI public]

-modify-image-attribute コマンド (AWS CLI) を次のように使用して、指定した AMI の launchPermission リストに all グループを追加します。

Copy
$ aws ec2 modify-image-attribute --image-id ami-12345678 --launch-permission "{\"Add\":[{\"Group\":\"all\"}]}"

AMI の起動許可を確認するには、次の describe-image-attribute コマンドを使用します。

Copy
$ aws ec2 describe-image-attribute --image-id ami-12345678 --attribute launchPermission

(オプション) AMI をプライベートに戻すには、その起動許可から all グループを削除します。AMI の所有者には常に起動許可が与えられるため、このコマンドの影響を受けないことにご注意ください。

Copy
$ aws ec2 modify-image-attribute --image-id ami-12345678 --launch-permission "{\"Remove\":[{\"Group\":\"all\"}]}"

または、AWS Tools for Windows PowerShell コマンド Edit-EC2ImageAttribute および Get-EC2ImageAttribute を使用することもできます。