有什么办法可以在容器内授予 lambda 用户访问权限吗?

Is there any way to give lambda-user access inside container?

背景:我们的团队正在尝试 运行 UI 对 lambda 进行性能测试。现在我们正在 运行ning 性能测试用例将我们的代码上传到 lambda 上的 zip 文件。这里的挑战是,随着我们的应用程序不断增长,我们正在达到 50 MB 的 lambda zip 文件大小限制。 然后我们遇到了图像大小限制高达 10GB 的 Lambda 容器。

问题:我们构建了具有所需依赖项的 docker 映像,我们能够 运行 在本地以及 Jenkins 代理上测试我们的用例。但是当我们尝试在 lambda 上 运行 相同的 docker 图像时,它会给出错误 - “Lambda 用户没有给定目录的写权限”。 Google chrome 在 运行 运行自动化脚本时创建文件。 Lambda 仅在临时文件夹内具有读写访问权限。临时文件夹大小 lint 为 512MB。有什么方法可以让容器内的 lambda 访问 运行 测试用例?

根据有根据的猜测,答案是否定的。如果 Lambda 允许 read/write 个容器,那么一个图像可能会恶意或意外地消耗它所在节点 space 上的所有磁盘 运行,并影响其他图像的执行容器。

如果您需要更多 space,那么一种选择是 mount an EFS filesystem 到您的 Lambda 中。但是,我不知道它是否适用于容器,还是仅适用于 ZIP 部署。

但是,鉴于您已经将应用程序容器化,我认为更好的解决方案是使用 ECS 而不是 Lambda。这会给你 20 GB of ephemeral storage,如果你需要更多,你可以安装一个 EFS 卷。 ECS 的另一个好处是您不限于 15 分钟的执行时间。