配置 Lambda 扩展 - Amazon Lambda
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

配置 Lambda 扩展

配置扩展(.zip 文件存档)

您可以将扩展作为 Lambda 层添加到函数中。使用层可让您在整个组织或整个 Lambda 开发人员社区中共享扩展。您可以向层添加一个或多个扩展。您最多可以为一个函数注册 10 个扩展。

您可以使用与任何层相同的方法将扩展添加到函数中。有关更多信息,请参阅使用 Lambda 层

将扩展添加到您的函数(控制台)
  1. 打开 Lamba 控制台的 Functions(函数)页面。

  2. 选择函数。

  3. 选择 Code(代码)(如果尚未选择)。

  4. Layers(层)下,选择 Edit(编辑)

  5. 对于选择层,选择指定 ARN

  6. 对于指定 ARN,输入扩展层的 Amazon Resource Name (ARN)。

  7. 选择添加

在容器映像中使用扩展

您可以向容器映像添加扩展。ENTRYPOINT 容器映像设置指定函数的主进程。在 Dockerfile 中配置 ENTRYPOINT 设置,或者覆盖函数配置。

您可以在一个容器内运行多个进程。Lambda 管理主进程和任何其他进程的生命周期。Lambda 使用扩展 API 管理扩展生命周期。

示例:添加外部扩展

外部扩展在 Lambda 函数之外的单独进程中运行。Lambda 为 /opt/extensions/ 目录中的每个扩展启动一个进程。Lambda 使用扩展 API 管理扩展生命周期。函数运行完成后,Lambda 向每个外部扩展发送一个 Shutdown 事件。

例 向 Python 基本映像添加外部扩展
FROM public.ecr.aws/lambda/python:3.11 # Copy and install the app COPY /app /app WORKDIR /app RUN pip install -r requirements.txt # Add an extension from the local directory into /opt ADD my-extension.zip /opt CMD python ./my-function.py

后续步骤

要了解有关扩展的更多信息,我们建议使用以下资源:

  • 有关基本的工作示例,请参阅 Amazon Lambda 计算博客上的构建 Amazon 扩展

  • 有关 Amazon Lambda 合作伙伴提供的扩展的信息,请参阅 Amazon Lambda 计算博客上的Amazon 扩展简介

  • 要查看可用的示例扩展和包装脚本,请参阅Amazon示例 GitHub 存储库中的Amazon Lambda扩展