本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
sam local start-lambda
本頁提供「 AWS Serverless Application Model 指令行介面」(AWS SAMCLI) sam local start-lambda
子指令的參考資訊。
-
如需「」的簡介 AWS SAMCLI,請參閱什麼是 AWS SAMCLI?。
-
如需使用 AWS SAMCLI
sam local start-lambda
子指令的文件,請參閱測試簡介 sam local start-lambda。
sam local start-lambda
子命令啟動要模擬 AWS Lambda的本地端點。
用量
$
sam local start-lambda
<options>
選項
--add-host
LIST
-
將主機名稱傳遞給 IP 地址映射到 Docker 容器的主機文件。此參數可以多次傳遞。
範例:
--add-host
example.com:127.0.0.1
--beta-features | --no-beta-features
-
允許或拒絕測試版功能。
--config-env
TEXT
-
指定組態檔案中要使用的預設參數值的環境名稱。預設值為「預設值」。如需關於組態檔案的詳細資訊,請參閱 AWS SAMCLI配置文件。
--config-file
PATH
-
包含要使用的預設參數值的組態檔案的路徑和檔案名稱。默認值是項目目錄的根目錄中的「samconfig.toml」。如需關於組態檔案的詳細資訊,請參閱 AWS SAMCLI配置文件。
--container-env-vars
-
選用。在本地調試時將環境變量傳遞給映像容器。
--container-host
TEXT
-
本機模擬 Lambda 容器的主機。預設值為
localhost
。如果要在 macOS 上的 Docker 容器 AWS SAMCLI中運行,則可以指定host.docker.internal
。如果您想要在不同的主機上執行容器 AWS SAMCLI,您可以指定遠端主機的 IP 位址。 --container-host-interface
TEXT
-
容器連接埠應繫結之主機網路介面的 IP 位址。預設值為
127.0.0.1
。用0.0.0.0
於繫結至所有介面。 --debug
-
開啟偵錯記錄以列印由產生的偵錯訊息, AWS SAMCLI並顯示時間戳記。
--debug-args
TEXT
-
要傳遞給調試器的其他參數。
--debug-function
-
選用。指定 Lambda 函數,以在指定時
--warm-containers
套用偵錯選項。此參數適用於--debug-port
--debugger-path
、和--debug-args
。 --debug-port, -d
TEXT
-
如果有指定,系統會以偵錯模式啟動 Lambda 函數容器,並在本機主機上公開此連接埠。
--debugger-path
TEXT
-
要掛接至 Lambda 容器的除錯程式的主機路徑。
--docker-network
TEXT
-
Lambda Docker 容器應連線到的現有 Docker 網路名稱或識別碼,以及預設橋接網路。如果指定此選項,Lambda 容器只會連線到預設的橋接器 Docker 網路。
--docker-volume-basedir, -v
TEXT
-
AWS SAM 檔案所在之基本目錄的位置。如果 Docker 在遠端機器上執行,您必須掛載 Docker 機器上 AWS SAM 檔案所在的路徑,並修改此值以符合遠端機器。
--env-vars, -n
PATH
-
包含 Lambda 函數環境變數值的 JSON 檔案。
--force-image-build
-
指定是否CLI應該重建用於使用圖層調用函數的映像。
--help
-
顯示此訊息並結束。
--hook-name
TEXT
-
用來擴充 AWS SAMCLI功能的掛接名稱。
接受的值:
terraform
。 --host
TEXT
-
要綁定的本地主機名稱或 IP 地址(默認值:'127.0.0.1')。
--invoke-image
TEXT
-
要用於本機函數叫用之容器映像檔的 URI。默認情況下, AWS SAM 從 Amazon ECR 公共提取容器映像。使用此選項可從其他位置提取影像。
例如
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
-
選用。包含編碼為索引鍵值配對之 AWS CloudFormation 參數覆寫的字串。使用與 — 相同的格式 AWS CLI— 例如,'ParameterKey=,ParameterValueMyKey ParameterKey= KeyPairNameInstanceType,ParameterValue=t1.micro'。此選項與不相容
--hook-name
。 --port, -p
INTEGER
-
要監聽的本地端口號(默認值:'3001')。
--profile
TEXT
-
從您的認證檔案取得 AWS 認證的特定設定檔。
--region
TEXT
-
要部署的 AWS 區域。例如 us-east-1。
--save-params
-
將您在命令列中提供的參數儲存到 AWS SAM 組態檔案中。
--shutdown
-
在叫用完成後模擬 shutdown 事件,以測試關機行為的延伸處理。
--skip-prepare-infra
-
如果未進行基礎結構變更,則略過準備階段。搭配
--hook-name
選項使用。 --skip-pull-image
-
指定是否CLI應略過向下拉 Lambda 執行階段的最新 Docker 映像檔。
--template, -t
PATH
-
AWS SAM 範本檔案。
注意
如果指定此選項,則僅 AWS SAM 載入範本及其指向的本機資源。此選項與不相容
--hook-name
。 --terraform-plan-file
-
AWS SAMCLI搭配使用時,本端Terraform平面檔的相對或絕對路徑Terraform Cloud。此選項需要
--hook-name
將設定為terraform
。 --warm-containers
[EAGER | LAZY]
-
選用。指定如何 AWS SAMCLI管理每個函數的容器。
有兩個選項可供選擇:
-
EAGER
:所有函數的容器都在啟動時加載,並在調用之間保留。 -
LAZY
:只有在第一次呼叫每個函數時,才會載入容器。這些容器會持續存在,以進行其他調用。
-