本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
sam local start-lambda
本页提供 Amazon Serverless Application Model 命令行界面 (Amazon SAMCLI) sam local start-lambda
子命令的参考信息。
-
有关简介 Amazon SAMCLI,请参阅那是什么 Amazon SAMCLI?。
-
有关使用 Amazon SAMCLI
sam local start-lambda
子命令的文档,请参阅使用测试简介 sam local start-lambda。
sam local start-lambda
子命令启动要模拟 Amazon Lambda的本地端点。
使用量
$
sam local start-lambda
<options>
Options
--add-host
LIST
-
将主机名传递到 IP 地址映射到 Docker 容器的主机文件。此参数可以多次传递。
例如:
--add-host
example.com:127.0.0.1
--beta-features | --no-beta-features
-
允许或拒绝测试版功能。
--config-env
TEXT
-
在配置文件中指定要使用的默认参数值的环境名称。默认值为“default”。有关配置文件的详细信息,请参阅 Amazon SAMCLI 配置文件。
--config-file
PATH
-
包含要使用的默认参数值的配置文件的路径和文件名。在项目目录的根目录中,默认值为“samconfig.toml”。有关配置文件的详细信息,请参阅 Amazon SAMCLI 配置文件。
--container-env-vars
-
可选。在本地调试时,将环境变量传递到映像容器。
--container-host
TEXT
-
本地模拟的 Lambda 容器的主机。默认值为
localhost
。如果要在 macOS 上的 Docker 容器中运行 Amazon SAM CLI,可以指定host.docker.internal
。如果要在与之不同的主机上运行容器 Amazon SAMCLI,则可以指定远程主机的 IP 地址。 --container-host-interface
TEXT
-
应与容器端口绑定的主机网络接口的 IP 地址。默认值为
127.0.0.1
。使用0.0.0.0
可绑定到所有接口。 --debug
-
启用调试日志记录,以打印 Amazon SAM CLI 生成的调试消息并显示时间戳。
--debug-args
TEXT
-
要传递给调试程序的其他参数。
--debug-function
-
可选。指定在指定
--warm-containers
时应用调试选项的 Lambda 函数。此参数适用于--debug-port
、--debugger-path
和--debug-args
。 --debug-port, -d
TEXT
-
指定后,在调试模式下启动 Lambda 函数容器,并在本地主机上开放此端口。
--debugger-path
TEXT
-
挂载到 Lambda 容器中的调试器的主机路径。
--docker-network
TEXT
-
Lambda Docker 容器应连接到的现有 Docker 网络的名称或 ID,以及默认桥接网络。如果未指定此项,Lambda 容器将仅连接到默认的桥接 Docker 网络
--docker-volume-basedir, -v
TEXT
-
Amazon SAM 文件所在的基本目录的位置。如果 Docker 在远程计算机上运行,则必须在 Docker 计算机上挂载 Amazon SAM 文件所在的路径,并修改此值以匹配远程计算机。
--env-vars, -n
PATH
-
包含 Lambda 函数环境变量值的 JSON 文件。
--force-image-build
-
指定 CLI 是否应重建用于调用包含层的函数的映像。
--help
-
显示此消息并退出。
--hook-name
TEXT
-
用于扩展 Amazon SAM CLI 功能的钩子的名称。
可接受的值:
terraform
。 --host
TEXT
-
要绑定的本地主机名或 IP 地址(默认值:'127.0.0.1')。
--invoke-image
TEXT
-
要用于本地函数调用的容器映像的 URI。默认情况下,从 Amazon ECR Public 中 Amazon SAM 提取容器镜像。使用此选项可从其他位置提取映像。
例如,
sam local start-lambda MyFunction --invoke-image amazon/aws-sam-cli-emulation-image-python3.8
。 --layer-cache-basedir
DIRECTORY
-
指定模板使用的层下载到的基目录的位置。
--log-file, -l
TEXT
-
运行时日志将被发送到的日志文件。
--parameter-overrides
-
可选。包含编码为键值对的 Amazon CloudFormation 参数覆盖的字符串。使用与 Amazon CLI(例如,'=、ParameterKey ParameterValue MyKey ParameterKey = KeyPairName InstanceType、= ParameterValue t1.micro')相同的格式。此选项与
--hook-name
不兼容。 --port, -p
INTEGER
-
要监听的本地端口号(默认值:'3001')。
--profile
TEXT
-
您的凭证文件中用于获取 Amazon 凭证的特定个人资料。
--region
TEXT
-
要部署到的 Amazon 区域。例如,us-east-1。
--save-params
-
将您在命令行中提供的参数保存到 Amazon SAM 配置文件中。
--shutdown
-
在调用完成后模拟关闭事件,以测试关闭行为的扩展处理。
--skip-prepare-infra
-
如果没有进行任何基础架构更改,则跳过准备阶段。使用
--hook-name
选项。 --skip-pull-image
-
指定 CLI 是否应跳过下拉最新 Docker 映像获取 Lambda 运行时的操作。
--template, -t
PATH
-
Amazon SAM 模板文件。
注意
如果指定此选项,则仅 Amazon SAM 加载模板及其指向的本地资源。此选项与
--hook-name
不兼容。 --terraform-plan-file
-
将 Amazon SAM CLI 与 Terraform Cloud 配合使用时本地 Terraform 计划文件的相对路径或绝对路径。此选项要求将
--hook-name
设置为terraform
。 --warm-containers
[EAGER | LAZY]
-
可选。指定 Amazon SAM CLI 如何管理每个函数的容器。
有两个选项:
-
EAGER
:在启动时加载所有函数的容器,且在两次调用之间保持不变。 -
LAZY
:仅在首次调用每个函数时加载容器。这些容器会持续存在,以便进行其他调用。
-