翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
sam local start-api
このページでは、AWS Serverless Application Model コマンドラインインターフェイス (AWS SAM CLI) の sam local start-api サブコマンドのリファレンス情報を提供します。
-
AWS SAM CLI の概要については、「AWS SAMCLIとは」を参照してください。
-
AWS SAM CLI
sam local start-apiサブコマンドの使用に関するドキュメントについては、「sam local start-api を使用したテストの概要」を参照してください。
sam local start-api サブコマンドは AWS Lambda 関数をローカルで実行し、ローカル HTTP サーバー ホストを通じてテストします。
使用
$sam local start-api<options>
オプション
--add-hostLIST-
Docker コンテナのホストファイルへの IP アドレスマッピングに、ホスト名を渡します。このパラメータは、複数回渡すことができます。
例:
--add-hostexample.com:127.0.0.1 --beta-features | --no-beta-features-
ベータ機能を許可または拒否します。
--config-envTEXT-
使用する設定ファイル内のデフォルトパラメータ値を指定する環境名です。デフォルト値は「default」です。設定ファイルの詳細については、「AWS SAM CLI 設定ファイル」を参照してください。
--config-filePATH-
使用するデフォルトのパラメータ値が含まれる設定ファイルのパスとファイル名です。デフォルト値は、プロジェクトディレクトリのルートにある「samconfig.toml」です。設定ファイルの詳細については、「AWS SAM CLI 設定ファイル」を参照してください。
--container-env-vars-
オプション。ローカルでデバッグする時に、環境変数をイメージコンテナに渡します。
--container-hostTEXT-
ローカルでエミュレートされた Lambda コンテナのホストです。デフォルト値は
localhostです。macOS 上の Docker コンテナで AWS SAM CLI を実行する場合は、host.docker.internalを指定できます。AWS SAM CLI 以外のホストでコンテナを実行する場合は、リモートホストの IP アドレスを指定できます。 --container-host-interfaceTEXT-
コンテナポートがバインドする必要があるホストネットワークインターフェイスの IP アドレスです。デフォルト値は
127.0.0.1です。0.0.0.0を使用して、すべてのインターフェイスにバインドします。 --debug-
デバッグロギングをオンにして、AWS SAM CLI が生成するデバッグメッセージを出力表示し、タイムスタンプを表示します。
--debug-argsTEXT-
デバッガーに渡される追加の引数です。
--debug-function-
オプション。
--warm-containersが指定されているときにデバッグオプションを適用する Lambda 関数を指定します。このパラメータは、--debug-port、--debugger-path、および--debug-argsに適用されます。 --debug-port, -dTEXT-
これを指定すると、Lambda 関数コンテナがデバッグモードで起動され、このポートがローカルホストに公開されます。
--debugger-pathTEXT-
Lambda コンテナにマウントされるデバッガーへのホストパスです。
--docker-networkTEXT-
デフォルトのブリッジネットワークと共に、Lambda Docker コンテナが接続される必要がある既存の Docker ネットワークの名前または ID です。これを指定しない場合、Lambda コンテナはデフォルトのブリッジ Docker ネットワークのみに接続します。
--docker-volume-basedir, -vTEXT-
AWS SAM ファイルが存在するベースディレクトリの場所です。Docker がリモートマシンで実行されている場合は、Docker マシン上に AWS SAM ファイルが存在するパスをマウントし、この値をリモートマシンと一致するように変更する必要があります。
--env-vars, -nPATH-
Lambda 関数の環境変数の値が含まれる JSON ファイルです。
--force-image-build-
AWS SAM CLI がレイヤーを使用して関数を呼び出すために使用されるイメージを再構築するかどうかを指定します。
--help-
このメッセージを表示して終了します。
--hook-nameTEXT-
AWS SAM CLI 機能の拡張に使用されるフックの名前。
許容値:
terraform。 --hostTEXT-
バインド先のローカルホスト名または IP アドレス (デフォルト:「127.0.0.1」)。
--invoke-imageTEXT-
Lambda 関数に使用するコンテナイメージの URI。デフォルトで、AWS SAM は Amazon ECR Public からコンテナイメージをプルします。このオプションは、別の場所からイメージをプルするために使用します。
このオプションは複数回指定できます。このオプションの各インスタンスには、文字列またはキーバリューペアを使用できます。文字列を指定する場合は、アプリケーション内のすべての関数に使用するコンテナイメージの URI になります。例えば、
sam local start-api --invoke-image public.ecr.aws/sam/emu-python3.8。キーバリューペアを指定する場合、キーはリソース名で、値はそのリソースに使用するコンテナイメージの URI です。例えば、sam local start-api --invoke-image public.ecr.aws/sam/emu-python3.8 --invoke-image Function1=amazon/aws-sam-cli-emulation-image-python3.8です。キーバリューペアを使用すると、異なるリソースに異なるコンテナイメージを指定できます。 --layer-cache-basedirDIRECTORY-
テンプレートで使用されるレイヤーがダウンロードされる場所である basedir を指定します。
--log-file, -lTEXT-
ランタイムログを送信するログファイルです。
--no-memory-limit-
AWS SAM テンプレートでメモリが設定されている場合でも、ローカル呼び出し中にコンテナのメモリ制限を削除します。
--parameter-overrides-
キーバリューペアとしてエンコードされた 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
--port, -pINTEGER-
リッスンするローカルポート番号 (デフォルト:「3000」)。
--profileTEXT-
AWS 認証情報を取得する、認証情報ファイルから特定のプロファイルです。
--regionTEXT-
デプロイ先の AWS リージョンです。例えば、us-east-1 などです。
--save-params-
コマンドラインで指定したパラメータを AWS SAM 設定ファイルに保存します。
--shutdown-
シャットダウン動作の拡張機能処理をテストするために、呼び出し完了後にシャットダウンイベントをエミュレートします。
--skip-prepare-infra-
インフラストラクチャに変更が加えられていない場合は、準備段階をスキップします。
--hook-nameオプションと合わせて使用します。 --skip-pull-image-
Lambda ランタイムの最新 Docker イメージのプルダウンを CLI がスキップすべきかどうかを指定します。
--ssl-cert-filePATH-
SSL 証明書ファイルへのパス (デフォルト: なし)。このオプションを使用する場合は、
--ssl-key-fileオプションも使用する必要があります。 --ssl-key-filePATH-
SSL キーファイルへのパス (デフォルト: なし)。このオプションを使用する場合は、
--ssl-cert-fileオプションも使用する必要があります。 --static-dir, -sTEXT-
このディレクトリにある静的アセット (CSS/JavaScript/HTML など) ファイルは、
/に表示されます。 --template, -tPATH-
AWS SAM テンプレートファイルです。
注記
注意: このオプションを指定すると、AWS SAM はテンプレートと、それがポイントするローカルリソースのみをロードします。
--terraform-plan-file-
Terraform Cloud で AWS SAMCLI を使用する場合のローカル Terraform プランファイルへの相対パスまたは絶対パス。このオプションは
--hook-nameをterraformに設定する必要があります。 --warm-containers[EAGER | LAZY]-
オプション。AWS SAM CLI が各関数のコンテナを管理する方法を指定します。
以下の 2 つのオプションを使用できます。
EAGER: 起動時にすべての関数のコンテナがロードされ、呼び出し間で保持されます。LAZY: 各関数が初めて呼び出される場合に限り、コンテナがロードされます。これらのコンテナは、追加の呼び出し用に保持されます。
例
次の例では、ローカルサーバーを起動して、API 経由でアプリケーションをテストできるようにします。このコマンドを機能させるには、アプリケーションがインストール済みで、Docker が実行中である必要があります。
$sam local start-api --port 3000