boto3 使用实例 ID 创建图像

the*_*ter 4 python cloud amazon-ec2 amazon-web-services boto3

我将 boto3 与 python3 一起用于 aws 使用,在 aws 控制台中,有一个非常简单的选项用于从正在运行/已停止的 ec2 实例创建图像。我正在 boto3 SDK 中寻找类似的东西,我发现的最接近的是如何从 EBS 卷创建图像,如下所示:

session = boto3.Session(...)
ec2 = session.client("ec2") 
ec2.create_image(...)
Run Code Online (Sandbox Code Playgroud)

正如这里所解释的

我想省去查找实例卷 ID 的需要,而只使用实例 ID,这可能吗?

我尝试遵循 使用此代码:

ec2.create_image(instance_id) 
Run Code Online (Sandbox Code Playgroud)

但出现这个错误

类型错误:create_image() 只接受关键字参数。

Mar*_*k B 6

您应该能够使用以下命令简单地传递实例 ID:

ec2.create_image(InstanceId=instance_id, Name="abc")

请注意,这将尝试重新启动您的 EC2 实例。如果您不希望实例重新启动,请使用:

ec2.create_image(InstanceId=instance_id, NoReboot=True, Name="abc")