AWS Lambda コンピューティングはビルドの起動速度を最適化します。起動レイテンシーが短いため、AWS Lambda はより高速なビルドをサポートします。また、AWS Lambda は自動的にスケールするため、ビルドはキュー内で実行を待つ必要がありません。ただし、AWS Lambda がサポートしていないユースケースもいくつかあります。それによって影響がある場合は EC2 コンピューティングを使用してください。詳細については、「AWS Lambda コンピューティングの制限」を参照してください。
トピック
- AWS Lambda 上で実行される、選別されたランタイム環境の Docker イメージには、どのツールとランタイムが含まれますか?
- キュレートされたイメージに必要なツールが含まれていない場合はどうなりますか。
- CodeBuild の AWS Lambda コンピューティングはどのリージョンでサポートされますか?
- AWS Lambda コンピューティングの制限
- CodeBuild Lambda Java で AWS SAM を使用して Lambda 関数をデプロイ
- CodeBuild Lambda Node.js を使用してシングルページの React アプリを作成
- CodeBuild Lambda Python を使用して Lambda 関数の設定を更新
AWS Lambda 上で実行される、選別されたランタイム環境の Docker イメージには、どのツールとランタイムが含まれますか?
AWS Lambda は、AWS CLI v2、AWS SAM CLI、git、go、Java、Node.js、Python、pip、Ruby、および .NET の各ツールをサポートしています。
キュレートされたイメージに必要なツールが含まれていない場合はどうなりますか。
キュレートされたイメージに必要なツールが含まれていない場合は、必要なツールを含むカスタム環境の Docker イメージを提供できます。
Lambda コンピューティングにカスタムイメージを使用するには、次の Amazon ECR アクセス許可が必要です。
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"ecr:GetAuthorizationToken"
],
"Resource": "*"
},
{
"Effect": "Allow",
"Action": [
"ecr:BatchCheckLayerAvailability",
"ecr:GetDownloadUrlForLayer",
"ecr:BatchGetImage"
],
"Resource": "arn:aws:ecr:image-region
:image-account-id
:repository/image-repo
"
}
]
}
また、カスタムイメージを使用するには、curl
または wget
をインストールする必要があります。
CodeBuild の AWS Lambda コンピューティングはどのリージョンでサポートされますか?
CodeBuild で、AWS Lambda コンピューティングがサポートされている AWS リージョンは、米国東部 (バージニア北部)、米国東部 (オハイオ)、米国西部 (オレゴン)、アジアパシフィック (ムンバイ)、アジアパシフィック (シンガポール)、アジアパシフィック (シドニー)、アジアパシフィック (東京)、欧州 (フランクフルト)、欧州 (アイルランド)、および南米 (サンパウロ)です。CodeBuild が使用可能な AWS リージョン の詳細については、「AWS サービス (リージョン別)
AWS Lambda コンピューティングの制限
AWS Lambda がサポートしていないユースケースもいくつかあります。それによって影響がある場合は EC2 コンピューティングを使用してください。
-
AWS Lambda は、root 権限を必要とするツールはサポートしていません。
yum
やrpm
などのツールには、EC2 コンピューティングタイプや root 権限を必要としないその他のツールを使用してください。 -
AWS Lambda は、Docker のビルドや実行をサポートしていません。
-
AWS Lambda は、
/tmp
外部のファイルへの書き込みはサポートしていません。付属のパッケージマネージャーは、パッケージのダウンロードと参照にデフォルトで/tmp
ディレクトリを使用するように設定されています。 -
AWS Lambda は環境タイプ
LINUX_GPU_CONTAINER
をサポートしていません。また、Windows Server Core 2019 ではサポートされていません。 -
AWS Lambda は、キャッシュ、バッチビルド、カスタムビルドのタイムアウト、キューのタイムアウト、ビルドバッジ、特権モード、カスタムランタイム環境、または 15 分を超えるランタイムをサポートしていません。
-
AWS Lambda は、VPC 接続、CodeBuild ソース IP アドレスの固定範囲、EFS、証明書のインストール、またはセッションマネージャーを使用した SSH アクセスをサポートしていません。