【问题标题】:My awscli is not working inside the lambda function我的 awscli 在 lambda 函数中不起作用
【发布时间】:2020-09-12 03:51:28
【问题描述】:

我正在尝试在 Lambda 函数上运行 AWS CLI 命令。我参考了How to use AWS CLI within a Lambda function (aws s3 sync from Lambda) :: Ilya Bezdelev 并使用 awscli 包生成了一个 zip 文件。当我尝试运行 lambda 函数时,出现以下错误:

START RequestId: d251660b-4998-4061-8886-67c1ddbbc98c Version: $LATEST
[INFO]  2020-06-22T19:15:45.232Z    d251660b-4998-4061-8886-67c1ddbbc98c    

运行shell命令:/opt/aws --version

Traceback (most recent call last):
  File "/opt/aws", line 19, in <module>
    import awscli.clidriver

ModuleNotFoundError: No module named 'awscli'

这可能是什么问题?

【问题讨论】:

  • 您是在使用here 显示的 lambda 层还是尝试自己构建它?
  • 您的实际目标是什么?你想运行什么命令,你想要什么结果?不建议使用 Lambda 中的 awscli,如果您能告诉我们更多关于您的需求,可能会有替代方案。
  • Marcin,我尝试按照提到的 URL 中的说明自行构建,我使用 aws 包生成了 zip 文件并将其添加到图层中。当我尝试运行脚本时出现此错误
  • John Rotenstein,我的公司不向开发人员和除我的团队(云工程团队)之外的其他团队授予对 aws cli 的访问权限。因此,我试图找到一种方法让开发人员可以访问 aws cli 并遇到了这种方法。因为他们可以运行 lambda 函数,所以他们可以使用这种方式。希望这能清除我的目标!

标签: python amazon-web-services ubuntu aws-lambda aws-cli


【解决方案1】:

“site-packages”文件夹中的所有内容都需要直接在 zip 中,然后是 lambda 的 /opt/ 文件夹,而不是嵌套在“site-packages”文件夹中,不幸的是,当教程导致你逐字使用他的命令。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-06-19
    • 1970-01-01
    • 1970-01-01
    • 2017-03-26
    • 1970-01-01
    • 1970-01-01
    • 2018-05-05
    • 1970-01-01
    相关资源
    最近更新 更多