【发布时间】:2021-06-17 17:02:32
【问题描述】:
我必须将我的 AWS Lambda 连接到 AWS S3 存储桶才能获得自定义泡菜对象。我能够在this AWS 资源之后做到这一点,而且效果很好。
但是,我需要明确地将 AWS S3 存储桶 URL 放入 AWS lambda 以便将大型 Python 包 xgboost 导入到 temp 目录中AWS Lambda 容器(如 this 和 this)。我能够完成这项工作,但要做到这一点,我需要授予我的 S3 存储桶公共访问权限。
我的问题是是否可以在 AWS Lambda 中明确声明 AWS S3 URL 而无需允许公开访问 S3 存储桶?
【问题讨论】:
-
如何将 lambda 封装到容器 New for AWS Lambda – Container Image Support 中。 here is an example
-
您似乎成功地从 S3 获取了一个对象(pickle 对象),但没有成功获取另一个对象(xgboost 包)。您尝试获取这些对象的方式有什么不同?
-
@jarmod 不同之处在于可访问对象是
pickle文件,我使用pickle.load和boto3加载它,它是getObject方法。无法访问的文件实际上是我想通过显式 URL 访问的 linuxxgboost.zip库。
标签: python amazon-web-services amazon-s3 aws-lambda