Repolode
terraform-aws-modules

terraform-aws-modules/terraform-aws-lambda

在 Terraform 中创建 AWS Lambda 函数与 Layer,并负责依赖安装和部署包打包。

Star
1,041
Fork
783
未关闭 Issue
7
最近提交
9天前

这是什么?

这是一个 Terraform 模块,用于创建大部分 AWS Lambda 资源,包括函数、Layer、别名和事件相关配置。它同时负责构建环节,在部署前安装依赖并将代码打包为部署压缩包。

构建可以在本地执行,也可以在 Docker 中进行,支持 AWS Lambda 所支持的各种运行时和架构。部署包可以保存在本地或 S3 中,部署来源可以是本地已构建的 zip、S3、URL 或 ECR 镜像。此外还支持 Lambda@Edge、VPC、EFS、预置并发、IAM 策略和事件源映射等配置。

该模块属于 serverless.tf 体系,并附带别名模块,以及基于 CodeDeploy 的滚动发布、金丝雀发布和回滚模块。

核心功能

  • 01支持在本地或 Docker 中为 Lambda 支持的任意运行时和架构构建依赖。
  • 02可以创建部署包,也可以从本地、S3、URL 或 ECR 部署已有的包。
  • 03部署包可保存在本地或 S3 存储桶中。
  • 04管理 Lambda 函数、Layer、别名以及 Lambda@Edge。
  • 05配置 VPC、EFS、IAM 策略、触发器和事件源映射。

适用场景

  • 在 Terraform 中与其他基础设施一起管理 AWS Lambda 函数及其 IAM 角色。
  • 在 Terraform 执行过程中,将 Python 或 Node.js 代码与 pip、npm 依赖一起打包。
  • 通过别名和 CodeDeploy 对 Lambda 函数进行金丝雀或滚动发布。

快速上手

  1. 1

    在 Terraform 配置中声明该模块及其所需的函数参数

  2. 2

    初始化 Terraform 工作目录

    terraform init
  3. 3

    预览并应用计划中的基础设施

    terraform apply

使用前须知

  • 构建依赖需要 Python 3.6 或更高版本。

标签

常见问题

terraform-aws-lambda 是什么?
在 Terraform 中创建 AWS Lambda 函数与 Layer,并负责依赖安装和部署包打包。 这是一个 Terraform 模块,用于创建大部分 AWS Lambda 资源,包括函数、Layer、别名和事件相关配置。它同时负责构建环节,在部署前安装依赖并将代码打包为部署压缩包。
terraform-aws-lambda 可以免费使用吗?用的什么许可证?
terraform-aws-lambda 以 Apache-2.0 许可证开源。用于商业产品前,请先确认许可证条款。
terraform-aws-lambda 还在维护吗?
活跃维护中。terraform-aws-lambda 最近一次提交是在 2026年10月29日。
terraform-aws-lambda 适合用来做什么?
在 Terraform 中与其他基础设施一起管理 AWS Lambda 函数及其 IAM 角色。 在 Terraform 执行过程中,将 Python 或 Node.js 代码与 pip、npm 依赖一起打包。 通过别名和 CodeDeploy 对 Lambda 函数进行金丝雀或滚动发布。
terraform-aws-lambda 怎么安装和运行?
在 Terraform 配置中声明该模块及其所需的函数参数 初始化 Terraform 工作目录: terraform init 预览并应用计划中的基础设施: terraform apply
在哪里获取 terraform-aws-lambda?
源代码和安装说明在 GitHub 上:https://github.com/terraform-aws-modules/terraform-aws-lambda

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目