sam local start-api - AWS Serverless Application Model

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

sam local start-api

サーバーレスアプリケーションをローカルで実行して、開発とテストを迅速に行えます。サーバーレス関数と AWS SAM テンプレートを含むディレクトリでこのコマンドを実行すると、すべての関数をホストするローカル HTTP サーバーが作成されます。

このコマンドを使用すると、デフォルトでAWS SAMCLIは、現在の作業ディレクトリがプロジェクトのルートディレクトリであると仮定します。-AWS SAMCLIはまず、sam buildコマンドで、.aws-samサブフォルダ、および名前付きtemplate.yamlまたはtemplate.yml。次に、AWS SAMCLIは、という名前のテンプレートファイルを検索しようとしますtemplate.yamlまたはtemplate.yml現在の作業ディレクトリで。指定すると、--templateオプションAWS SAMCLIのデフォルトの動作はオーバーライドされ、AWS SAMテンプレートと、それが指すローカルリソースです。

(ブラウザ、CLI などを介して) アクセスされると、Docker コンテナをローカルで起動して関数を呼び出します。これは、のCodeUri プロパティを読み取りAWS::Serverless::Functionリソースを使用して Lambda 関数コードが含まれているファイルシステム内のパスを見つけます。これは、Node.js や Python などの解釈された言語用のプロジェクトのルートディレクトリ、またはコンパイルされたアーティファクトや Java アーカイブ (JAR) ファイルを格納するビルドディレクトリです。

解釈された言語を使用している場合は、すべての呼び出しでローカルの変更を Docker コンテナですぐに使用できます。さらにコンパイルされた言語や複雑なパッキングサポートを必要とするプロジェクトについては、独自のビルドソリューションを実行し、AWS SAM をポイントして、ビルドアーティファクトを含むディレクトリまたはファイルを指定することをお勧めします。

このコマンドを使用するエンドツーエンドの例については、「」を参照してください。チュートリアル: Hello World アプリケーションのデプロイ。-sam local start-apiコマンドはの一部です。ステップ 4: (オプション) アプリケーションをローカルでテストします。

使用:

sam local start-api [OPTIONS]

オプション:

オプション 説明
--host TEXT バインド先のローカルホスト名または IP アドレス (デフォルト:「127.0.0.1」)。
-p, --port INTEGER リッスンするローカルポート番号 (デフォルト:「3000」)。
-s, --static-dir TEXT このディレクトリにある静的アセット (CSS/JavaScript/HTML など) ファイルは、/ に表示されます。
-t, --template PATH -AWS SAMテンプレートファイル。

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

-n, --env-vars PATH Lambda 関数の環境変数の値を含む JSON ファイル。
--parameter-overrides オプション。キーと値のペアとしてエンコードされた AWS CloudFormation パラメータオーバーライドを含む文字列。と同じ形式を使用します。AWS CLI—たとえば、「ParameterKey=KeyPairName、ParameterValue=MyKey ParameterKey=InstanceType、ParameterValue=t1.micro」です。
-d, --debug-port TEXT 指定すると、Lambda 関数コンテナをデバッグモードで起動し、このポートをローカルホストに公開します。
--debugger-path TEXT Lambda コンテナにマウントされるデバッガーへのホストパス。
--debug-args TEXT デバッガーに渡される追加の引数。
--warm-containers [EAGER | LAZY]

オプション。方法を指定しますAWS SAMCLIは、各機能のコンテナを管理します。

使用できるオプションは 2 つです。

EAGER: すべての関数のコンテナは起動時にロードされ、呼び出しの間は保持されます。

LAZY: コンテナは、各関数が最初に呼び出されたときにのみロードされます。これらのコンテナは、追加の呼び出しのために持続します。

--debug-function

オプション。ときにデバッグオプションを適用するLambda 関数を指定します--warm-containersが指定されている場合、このパラメータは、--debug-port,--debugger-path, および--debug-args

-v, --docker-volume-basedir TEXT AWS SAM ファイルが存在するベースディレクトリの場所。Docker がリモートマシンで実行されている場合は、Docker マシン上に AWS SAM ファイルが存在するパスをマウントし、この値をリモートマシンと一致するように変更する必要があります。
--docker-network TEXT Lambda Docker コンテナが接続する必要のある既存の Docker ネットワークの名前または ID、およびデフォルトのブリッジネットワークです。これを指定しない場合、Lambda コンテナはデフォルトのブリッジ Docker ネットワークにのみ接続します。
--container-env-vars オプション。ローカルでデバッグするときに、環境変数をイメージコンテナに渡します。
-l, --log-file TEXT ランタイムログを送信するログファイル。
--layer-cache-basedir DIRECTORY テンプレートが使用するレイヤーがダウンロードされる場所 basedir を指定します。
--skip-pull-image CLI が Lambda ランタイムの最新の Docker イメージのプルダウンをスキップするかどうかを指定します。
--force-image-build CLI がレイヤーを使用して関数を呼び出すために使用されるイメージを再構築するかどうかを指定します。
--profile TEXT 認証情報ファイルから特定のプロファイルで、AWS認証情報。
--region TEXT -AWSデプロイ先リージョン。たとえば、us-east-1 です。
--config-file PATH 使用するデフォルトのパラメータ値が含まれている設定ファイルのパスとファイル名。デフォルト値は、プロジェクトディレクトリのルートにある「samconfig.toml」です。設定ファイルについて詳しくは、AWS SAMCLI 設定ファイル を参照してください。
--config-env TEXT 使用する設定ファイル内のデフォルトのパラメータ値を指定する環境名。デフォルト値はです。設定ファイルについて詳しくは、AWS SAMCLI 設定ファイル を参照してください。
--shutdown シャットダウン動作の拡張処理をテストするために、呼び出しが完了した後にシャットダウンイベントをエミュレートします。
--container-host TEXT ローカルでエミュレートされた Lambda コンテナのホスト。デフォルト値は localhost です。あなたが実行したい場合AWS SAMCLIをmacOS Dockerコンテナで使用する場合は、host.docker.internal。コンテナを別のホストで実行する場合AWS SAMCLI では、リモートホストの IP アドレスを指定できます。
--container-host-interface TEXT コンテナポートがバインドするホストネットワークインターフェースの IP アドレス。デフォルト値は 127.0.0.1 です。を使用する0.0.0.0を使用してすべてのインターフェイスにバインドします。
--debug デバッグログをオンにして、AWS SAMCLI およびタイムスタンプを表示します。
--help このメッセージを表示して終了します。