CreateImage 搭配 CLI 使用 - AWS SDK 程式碼範例

文件 AWS SDK AWS 範例 SDK 儲存庫中有更多可用的 GitHub 範例。

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

CreateImage 搭配 CLI 使用

下列程式碼範例示範如何使用 CreateImage

CLI
AWS CLI

範例 1:從 Amazon AMI 後端執行個體建立 EBS

下列create-image範例會從指定的執行個體建立 AMI。

aws ec2 create-image \ --instance-id i-1234567890abcdef0 \ --name "My server" \ --description "An AMI for my server"

輸出:

{ "ImageId": "ami-abcdef01234567890" }

如需為 AMI 指定區塊型裝置映射的詳細資訊,請參閱 Amazon AMI 使用者指南中的為 Word 指定區塊型裝置映射 EC2

範例 2:從 Amazon AMI 後端執行個體建立 EBS 而不重新啟動

下列create-image範例會建立 AMI 並設定 --no-reboot 參數,這樣執行個體就不會在建立映像之前重新啟動。

aws ec2 create-image \ --instance-id i-1234567890abcdef0 \ --name "My server" \ --no-reboot

輸出:

{ "ImageId": "ami-abcdef01234567890" }

如需為 AMI 指定區塊型裝置映射的詳細資訊,請參閱 Amazon AMI 使用者指南中的為 Word 指定區塊型裝置映射 EC2

範例 3:在建立時標記 AMI 和快照

下列create-image範例會建立 AMI,並使用相同的標籤標記 AMI 和快照 cost-center=cc123

aws ec2 create-image \ --instance-id i-1234567890abcdef0 \ --name "My server" \ --tag-specifications "ResourceType=image,Tags=[{Key=cost-center,Value=cc123}]" "ResourceType=snapshot,Tags=[{Key=cost-center,Value=cc123}]"

輸出:

{ "ImageId": "ami-abcdef01234567890" }

如需在建立時標記資源的詳細資訊,請參閱 Amazon EC2 使用者指南中的在資源建立時新增標籤

  • 如需 API 詳細資訊,請參閱 AWS CLI 命令參考中的 CreateImage

PowerShell
for PowerShell 工具

範例 1:此範例會從指定的執行個體建立具有指定名稱和描述的 AMI。Amazon EC2 會嘗試在建立映像之前,先將執行個體乾淨地關閉,並在完成時重新啟動執行個體。

New-EC2Image -InstanceId i-12345678 -Name "my-web-server" -Description "My web server AMI"

範例 2:此範例會從指定的執行個體建立具有指定名稱和描述的 AMI。Amazon EC2 會在不關閉和重新啟動執行個體的情況下建立映像;因此,無法保證建立映像上的檔案系統完整性。

New-EC2Image -InstanceId i-12345678 -Name "my-web-server" -Description "My web server AMI" -NoReboot $true

範例 3:此範例會建立具有三個磁碟區的 AMI。第一個磁碟區是以 Amazon EBS 快照為基礎。第二個磁碟區是空的 100 GiB Amazon EBS 磁碟區。第三個磁碟區是執行個體存放區磁碟區。此範例使用的語法需要 PowerShell 第 3 版或更高版本。

$ebsBlock1 = @{SnapshotId="snap-1a2b3c4d"} $ebsBlock2 = @{VolumeSize=100} New-EC2Image -InstanceId i-12345678 -Name "my-web-server" -Description "My web server AMI" -BlockDeviceMapping @( @{DeviceName="/dev/sdf";Ebs=$ebsBlock1}, @{DeviceName="/dev/sdg";Ebs=$ebsBlock2}, @{DeviceName="/dev/sdc";VirtualName="ephemeral0"})
  • 如需 API 詳細資訊,請參閱 AWS Tools for PowerShell Cmdlet 參考中的 CreateImage