sam local invoke - Amazon Serverless Application Model
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

sam local invoke

Amazon Serverless Application Model命令行界面 (Amazon SAMCLI) sam local invoke 子命令的选项。

用量

$ sam local invoke <options> <functionLogicalId>
注意

如果Amazon SAM模板中定义了多个函数,请提供要调用的函数逻辑 ID。

选项

选项 描述
--hook-name TEXT

用于扩展Amazon SAMCLI功能的挂钩的名称。

可接受的值:terraform.

--terraform-plan-file

使用 with 时,本地Terraform计划文件的相对或绝对路径Terraform Cloud。Amazon SAM CLI此选项要求--hook-name将其设置为terraform

--skip-prepare-infra 如果未对基础架构进行任何更改,则跳过准备阶段。与--hook-name选项一起使用。
-e, --event PATH 包含在调用 Lambda 函数时传递给该函数的事件数据的 JSON 文件。如果未指定此选项,则不假设任何事件。要从中输入 JSONstdin,必须传入值 '-'。有关来自不同Amazon服务的事件消息格式的详细信息,请参阅《Amazon Lambda开发人员指南》中的使用其他服务
--no-event 使用空事件调用该函数。
-t, --template PATH Amazon SAM模板文件。

注意:如果指定此选项,则仅Amazon SAM加载模板及其指向的本地资源。此选项与不兼容--hook-name

-n, --env-vars PATH 包含 Lambda 函数环境变量值的 JSON 文件。有关环境变量文件的更多信息,请参见环境变量文件
--parameter-overrides (可选)包含编码为键值对的Amazon CloudFormation参数覆盖的字符串。使用与 Amazon Command Line Interface (Amazon CLI) 相同的格式。例如:'ParameterKey= KeyPairName、= ParameterValue =、MyKey ParameterKey = InstanceTypeParameterValue =t1.micro'。此选项与不兼容--hook-name
-d, --debug-port TEXT 指定后,以调试模式启动 Lambda 函数容器,并在本地主机上公开此端口。
--debugger-path TEXT 挂载到 Lambda 容器中的调试器的主机路径。
--debug-args TEXT 要传递给调试器的其他参数。
-v, --docker-volume-basedir TEXT Amazon SAM文件所在的基本目录的位置。如果 Docker 在远程计算机上运行,则必须在 Docker 计算机上挂载Amazon SAM文件所在的路径,并修改此值以匹配远程计算机。
--docker-network TEXT Lambda Docker 容器应连接到的现有 Docker 网络的名称或 ID,以及默认的桥接网络。如果未指定此选项,则 Lambda 容器仅连接到默认的桥接 Docker 网络。
--container-env-vars (可选)在本地调试时,将环境变量传递到 Lambda 函数图像容器。
-l, --log-file TEXT 要将运行时日志发送到的日志文件。
--layer-cache-basedir DIRECTORY 指定模板使用的图层下载到的基目录的位置。
--skip-pull-image

默认情况下,Amazon SAMCLI会检查 Lambda 最新的远程运行时环境,并自动更新您的本地映像以保持同步。

指定此选项可跳过为您的 Lambda 运行时环境下拉最新Docker映像的操作。

--beta-features | --no-beta-features 允许或拒绝测试版功能。
--force-image-build 指定是否Amazon SAMCLI应重建用于调用带图层的 Lambda 函数的映像。
--invoke-image TEXT

要用于本地函数调用的容器镜像的 URI。默认情况下,从 Amazon ECR Public 中Amazon SAM提取容器镜像。使用此选项从其他位置拉出图像。

例如,sam local invoke MyFunction --invoke-image amazon/aws-sam-cli-emulation-image-python3.8

--profile TEXT 您的凭证文件中用于获取Amazon凭证的特定个人资料。
--region TEXT 要部署到的Amazon区域。例如,us-east-1。
--config-file PATH 包含要使用的默认参数值的配置文件的路径和文件名。项目目录根目录中的默认值为 samconfig.toml “”。有关配置文件的详细信息,请参阅 Amazon SAMCLI配置文件
--config-env TEXT 在配置文件中指定要使用的默认参数值的环境名称。默认值为 “默认”。有关配置文件的详细信息,请参阅 Amazon SAMCLI配置文件
--shutdown 在调用完成后模拟关闭事件,以测试关闭行为的扩展处理。
--container-host TEXT 本地模拟的 Lambda 容器的主机。默认值为 localhost。如果你想Amazon SAMCLI在 macOS 上的 Docker 容器中运行,你可以指定。host.docker.internal如果要在与之不同的主机上运行容器 Amazon SAMCLI,则可以指定远程主机的 IP 地址。
--container-host-interface TEXT 容器端口应绑定的主机网络接口的 IP 地址。默认值为 127.0.0.1。用于绑定0.0.0.0到所有接口。
--debug 启用调试日志以打印Amazon SAMCLI生成的调试消息并显示时间戳。
--help 显示此消息并退出。