Python boto3使用实例id创建映像
我将boto3与python3一起用于aws,在aws控制台中有一个非常简单的选项,用于从运行/停止的ec2实例创建映像。我正在boto3 SDK中寻找类似的东西,我发现最接近的是如何从EBS卷创建映像,如下所示:Python boto3使用实例id创建映像,python,amazon-web-services,amazon-ec2,cloud,boto3,Python,Amazon Web Services,Amazon Ec2,Cloud,Boto3,我将boto3与python3一起用于aws,在aws控制台中有一个非常简单的选项,用于从运行/停止的ec2实例创建映像。我正在boto3 SDK中寻找类似的东西,我发现最接近的是如何从EBS卷创建映像,如下所示: session = boto3.Session(...) ec2 = session.client("ec2") ec2.create_image(...) 如前所述 我想省去查找实例的卷ID的需要,只使用实例ID,这可能吗 我试着跟着 使用此代码: ec2.create_ima
session = boto3.Session(...)
ec2 = session.client("ec2")
ec2.create_image(...)
如前所述
我想省去查找实例的卷ID的需要,只使用实例ID,这可能吗
我试着跟着
使用此代码:
ec2.create_image(instance_id)
但我犯了这个错误
TypeError:create_image()只接受关键字参数
您应该能够使用以下方法简单地传递实例ID:
ec2.创建镜像(InstanceId=instance\u id,Name=“abc”)
请注意,这将尝试重新启动EC2实例。如果不希望实例重新启动,请使用:
ec2.创建映像(InstanceId=instance\u id,NoReboot=True,Name=“abc”)
尝试相同操作时,我遇到了一个错误->
“AttributeError:'ec2.ServiceResource'对象没有属性'create_image'”
所以我的建议是使用
"boto3.client('ec2').create_image" instead of "ec2.create_image"
谢谢,我试过了,得到了这个错误:在输入中缺少必需的参数:“Name”在添加Name时运行良好。另一个答案中的ec2假设ec2=boto3.client('ec2')。所以你们都是对的。