在自定义代码 aws lambda 层中需要依赖项
Require dependencies in custom code aws lambda layer
是否可以使用自定义代码创建一个 aws lamda 层作为多个 lambda 函数的共享代码库,它有自己的依赖项?我正在尝试创建一个层,该层使用 aws-sdk 访问 dynamodb-table。
我查阅了 aws 文档和多个网站,但没有找到创建具有自己依赖项的层的方法。
我想到了一些其他可能的解决方案,包括自定义 nodejs 包,我将其包含在每个 lambda 函数中,或者我的函数调用的附加 lambda 函数。对这些想法有什么看法吗?
感谢您的建议。
由于 AWS 层是由 zip 形成的,因此它们在特定版本中通常是不可变的。如果它们还不是 lambda 可以访问的标准可用库的一部分,您应该只将任何需要的库作为层的一部分包括在内(给定语言的 sdk 自动包含在所有 AWS 中关于该语言的所有图像中)
您唯一可以添加到层的 'dependencies' 是 languages/versions 可以使用它的东西 - 因此您可以要求给定层仅适用于节点 12 或节点 14 或其中的组合,您可以期望 lambda 节点图像附带的给定库将始终存在 - 其他任何内容,您都应该添加到您的图层中。
是否可以使用自定义代码创建一个 aws lamda 层作为多个 lambda 函数的共享代码库,它有自己的依赖项?我正在尝试创建一个层,该层使用 aws-sdk 访问 dynamodb-table。 我查阅了 aws 文档和多个网站,但没有找到创建具有自己依赖项的层的方法。
我想到了一些其他可能的解决方案,包括自定义 nodejs 包,我将其包含在每个 lambda 函数中,或者我的函数调用的附加 lambda 函数。对这些想法有什么看法吗?
感谢您的建议。
由于 AWS 层是由 zip 形成的,因此它们在特定版本中通常是不可变的。如果它们还不是 lambda 可以访问的标准可用库的一部分,您应该只将任何需要的库作为层的一部分包括在内(给定语言的 sdk 自动包含在所有 AWS 中关于该语言的所有图像中)
您唯一可以添加到层的 'dependencies' 是 languages/versions 可以使用它的东西 - 因此您可以要求给定层仅适用于节点 12 或节点 14 或其中的组合,您可以期望 lambda 节点图像附带的给定库将始终存在 - 其他任何内容,您都应该添加到您的图层中。