我怎么做
aws ec2 describe-images --filters "Name=platform,Values=windows"
我得到了数百个结果,但是当我这样做时:
aws ec2 describe-images --filters "Name=platform,Values=linux"
我明白了:
{
"Images": []
}
或
aws ec2 describe-images --filters "Name=platform,Values=ubuntu"
{
"Images": []
}
答案 0 :(得分:2)
正如Khalid已经指出的那样,platform
标签似乎只为Windows设置和支持。
您可以搜索说明:
aws ec2 describe-images --filters "Name=description,Values=*ubuntu*"
aws ec2 describe-images --filters "Name=description,Values=*linux*"
这些结果很多......
如果您正在搜索官方Amazon AMI,可以查看:
aws ec2 describe-images --filters "Name=description,Values=*Linux*" "Name=owner-alias,Values=amazon"
答案 1 :(得分:1)
尽管AWS未在website上明确说明这一点,但似乎platform
中的describe-images
过滤器与describe-instances
的行为方式相同。它只接受windows
或空。
平台 - 平台。如果您有Windows实例,请使用
windows
; 否则,留空。
This reference明确指出platform
过滤器的唯一有效值为windows
。 (第353页)
答案 2 :(得分:1)
如果您需要检索所有可用Ubuntu映像的信息,那么您可以执行以下操作:
aws ec2 describe-images --filters "Name=name,Values=*ubuntu*"
它将返回很长的结果列表,您可以使用以下任何过滤器进一步过滤: VirtualizationType,Name,Hypervisor,ImageId,State,BlockDeviceMappings,Architecture,ImageLocation,RootDeviceType,CreationDate,Public,ImageType 。您甚至可以指定AMI的所有者,例如:
aws ec2 describe-images --filters "Name=architecture,Values=x86_64" "Name=root-device-type,Values=ebs" "Name=virtualization-type,Values=hvm" "Name=name,Values=*ubuntu*xenial*" --owners=099720109477