【问题标题】:No module named boto3 on EC2 AMIEC2 AMI 上没有名为 boto3 的模块
【发布时间】:2018-10-17 00:38:17
【问题描述】:

我正在 EC2 上运行基于ami-0130c3a072f3832ff 2018.03 版本的脚本。

在预装包列表中有python-boto3

但是当我尝试import boto3 时,它会显示No module named: boto3

我该如何解决这个问题?

注意:有一个问题,在这种情况下我无法使用互联网(如果可能的话,我会使用 pip)

编辑1:

编辑2: 我正在启动一个 EC2 实例以在启动时运行脚本并在执行后关闭。

instance = EC2.run_instances(
    ImageId=AMI,
    InstanceType=INSTANCE_TYPE,
    MinCount=1,
    MaxCount=1,
    InstanceInitiatedShutdownBehavior='terminate',
    UserData=script
)

脚本是用Python编写的,以#!/usr/bin/env python开头

【问题讨论】:

  • 您使用的是特定版本的python吗? Boto3 可以安装为 2.7 而不是 3,反之亦然。
  • 顺便说一下,这是一个实例存储支持的 AMI。您是否出于某种原因故意选择它?
  • 您是如何查看“预装包列表”的?我启动了 AMI,但在上面找不到 boto3。
  • 我在这里查找过包裹:aws.amazon.com/amazon-linux-ami/2018-03-packages
  • 我不小心选择了它,因为我认为在我的情况下,它是 ebs 支持还是实例存储并不重要。

标签: python amazon-web-services boto3


【解决方案1】:

您需要从 amazon AMI 提供的软件包中安装 pip 和 boto3。

sudo yum install python-pip python3-wheel && Pip install boto3 --user

  • @ljmocic

【讨论】:

    猜你喜欢
    • 2019-07-04
    • 1970-01-01
    • 2021-11-03
    • 2018-10-03
    • 2020-09-25
    • 1970-01-01
    • 2017-12-20
    • 1970-01-01
    • 2017-07-21
    相关资源
    最近更新 更多