sam local invoke - AWS Serverless Application Model

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

sam local invoke

このページでは、 のリファレンス情報を提供します。 AWS Serverless Application Model コマンドラインインターフェイス (AWS SAM CLI) sam local invokeサブコマンド。

sam local invoke サブコマンドは、 の 1 回限りの呼び出しを開始します。 AWS Lambda ローカルで 関数を使用します。

使用方法

$ sam local invoke <arguments> <options>
注記

に複数の関数が定義されている場合 AWS SAM テンプレート、呼び出す関数の論理 ID を指定します。

引数

リソース ID

呼び出す Lambda 関数の ID。

この引数はオプションです。アプリケーションに 1 つの Lambda 関数が含まれている場合、 AWS SAM CLI はそれを呼び出します。アプリケーションに複数の関数が含まれている場合は、呼び出す関数の ID を指定します。

有効な値: リソースの論理 ID またはリソース ARN。

オプション

--add-host LIST

Docker コンテナのホストファイルにホスト名を IP アドレスマッピングに渡します。このパラメータは複数回渡すことができます。

例: --add-host example.com:127.0.0.1

--beta-features | --no-beta-features

ベータ機能を許可または拒否します。

--config-env TEXT

使用する設定ファイル内のデフォルトパラメータ値を指定する環境名です。デフォルト値は「default」です。設定ファイルの詳細については、「AWS SAM CLI 設定ファイル」を参照してください。

--config-file PATH

使用するデフォルトのパラメータ値が含まれる設定ファイルのパスとファイル名です。デフォルト値は、プロジェクトディレクトリのルートにある「samconfig.toml」です。設定ファイルの詳細については、「AWS SAM CLI 設定ファイル」を参照してください。

--container-env-vars

(オプション) ローカルでデバッグするときに、環境変数を Lambda 関数イメージコンテナに渡します。

--container-host TEXT

ローカルでエミュレートされた Lambda コンテナのホストです。デフォルト値は localhost です。を実行する場合 AWS SAM CLI macOS の Docker コンテナでは、 を指定できますhost.docker.internal。コンテナを とは異なるホストで実行する場合 AWS SAM CLI、リモートホストの IP アドレスを指定できます。

--container-host-interface TEXT

コンテナポートがバインドする必要があるホストネットワークインターフェイスの IP アドレスです。デフォルト値は 127.0.0.1 です。0.0.0.0 を使用して、すべてのインターフェイスにバインドします。

--debug

デバッグログ記録を有効にして、 AWS SAM CLI は を生成し、タイムスタンプを表示します。

--debug-args TEXT

デバッガーに渡す追加の引数です。

--debug-port, -d TEXT

これを指定すると、Lambda 関数コンテナがデバッグモードで起動され、このポートがローカルホストに公開されます。

--debugger-path TEXT

Lambda コンテナにマウントされたデバッガーへのホストパスです。

--docker-network TEXT

デフォルトのブリッジネットワークと共に、Lambda Docker コンテナが接続される必要がある既存の Docker ネットワークの名前または ID です。これを指定しない場合、Lambda コンテナはデフォルトのブリッジ Docker ネットワークだけに接続します。

--docker-volume-basedir, -v TEXT

が置かれているベースディレクトリの場所 AWS SAM ファイルが存在する。Docker がリモートマシンで実行されている場合は、 のパスをマウントする必要があります。 AWS SAM ファイルは Docker マシンに存在し、リモートマシンと一致するようにこの値を変更します。

--env-vars, -n PATH

Lambda 関数の環境変数の値を含むJSONファイル。環境変数ファイルの詳細については、「環境変数ファイル」を参照してください。

--event, -e PATH

Lambda 関数が呼び出されたときに Lambda 関数に渡されるイベントデータを含むJSONファイル。このオプションを指定しない場合、イベントは想定されません。JSON から入力するにはstdin、値「-」を渡す必要があります。さまざまな からのイベントメッセージ形式の詳細については、「」を参照してください。 AWS サービス、「 での他の サービスの使用」を参照してください。 AWS Lambda デベロッパーガイド

--force-image-build

が AWS SAM CLI は、レイヤーで Lambda 関数を呼び出すために使用されるイメージを再構築する必要があります。

--help

このメッセージを表示して終了します。

--hook-name TEXT

拡張に使用されるフックの名前 AWS SAM CLI 機能。

許容値: terraform

--invoke-image TEXT

ローカル関数URIの呼び出しに使用するコンテナイメージの 。デフォルトでは、 AWS SAM は、Amazon ECR Public ( にリストされている) からコンテナイメージをプルしますの画像リポジトリ AWS SAM。このオプションは、別の場所からイメージをプルするために使用します。

例えば、sam local invoke MyFunction --invoke-image amazon/aws-sam-cli-emulation-image-python3.8 と指定します。

--layer-cache-basedir DIRECTORY

テンプレートで使用するレイヤーがダウンロードされるベースディレクトリの場所を指定します。

--log-file, -l TEXT

ランタイムログを送信するログファイルです。

--no-event

空のイベントを使用して関数を呼び出します。

--parameter-overrides

を含む文字列 AWS CloudFormation パラメータは、キーと値のペアとしてエンコードされた を上書きします。と同じ形式を使用する AWS Command Line Interface (AWS CLI)。 AWS SAM CLI 形式は明示的なキーと値のキーワードで、各オーバーライドはスペースで区切られます。ここでは、以下の 2 つの例を示します。

  • --parameter-overrides ParameterKey=hello,ParameterValue=world

  • --parameter-overrides ParameterKey=hello,ParameterValue=world ParameterKey=example1,ParameterValue=example2 ParameterKey=apple,ParameterValue=banana

--profile TEXT

が取得する認証情報ファイルの特定のプロファイル AWS 認証情報。

--region TEXT

- AWS デプロイ先のリージョン。例えば、us-east-1 などです。

--save-params

コマンドラインで指定したパラメータを に保存します。 AWS SAM 設定ファイル。

--shutdown

シャットダウン動作の拡張機能処理をテストするために、呼び出し完了後にシャットダウンイベントをエミュレートします。

--skip-prepare-infra

インフラストラクチャに変更が加えられていない場合は、準備段階をスキップします。--hook-name オプションと合わせて使用します。

--skip-pull-image

デフォルトでは、 AWS SAM CLI は、Lambda の最新のリモートランタイム環境をチェックし、同期を維持するためにローカルイメージを自動的に更新します。

最新の のプルダウンをスキップするには、このオプションを指定します。Docker Lambda ランタイム環境の イメージ。

--template, -t PATH

- AWS SAM テンプレートファイル。

このオプションは --hook-name と互換性がありません。

注記

このオプションを指定すると、 AWS SAM は、テンプレートとそれが指すローカルリソースのみをロードします。

--terraform-plan-file

ローカルへの相対パスまたは絶対パス Terraform を使用する際の プランファイル AWS SAM CLI with Terraform Cloud。 このオプションでは、 を に設定--hook-nameする必要がありますterraform