如何在aws lambda函数内运行AWS CLI命令? [英] How to run `AWS CLI` command within `aws lambda` function?
问题描述
我想运行 aws cli
命令(实际上是
I would like to run aws cli
command (actually aws s3 sync
) from within the aws lambda function
. How do I do that? Ideally in python
, but javascript
(or java
) would work too.
使用python
我尝试通过 awscli
作为python软件包,以便以后使用.
但是,aws
命令在lambda函数执行期间不可用,只有awscli
软件包可用.
Using python
I tried achieving this by Creating a Deployment Package
where i would have awscli
as a python package, so that I can use it later.
However, the aws
command is not available during lambda function execution, and only the awscli
package is.
我如何:
- 两者之一:确保在lambda函数执行期间可以调用
awscli
吗? - or:直接从python
awscli
库构造一个aws s3 sync
调用吗?
- either: make sure that I have
awscli
available to be called during lambda function execution? - or: construct a
aws s3 sync
call directly from pythonawscli
library?
推荐答案
-在本地虚拟环境中安装AWS CLI
-Install AWS CLI in a local virtual environment
-将AWS CLI及其所有依赖项打包到一个zip文件中
-Package AWS CLI and all its dependencies to a zip file
-创建Lambda层
-在lambda函数中使用该层
-Use that layer in your lambda function
分步指南位于: https://bezdelev.com/hacking/aws -cli-inside-lambda-layer-aws-s3-sync/
或
按照其他堆栈溢出ans中的建议使用bash层 从AWS Lambda呼叫aws-cli
use bash layers as suggested in other stack overflow ans Call aws-cli from AWS Lambda
这篇关于如何在aws lambda函数内运行AWS CLI命令?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!