イメージリポジトリ
AWS SAM は、ビルドコンテナイメージを活用して、サーバーレスアプリケーションの継続的インテグレーションと継続的デプロイ (CI/CD) タスクをシンプルにします。AWS SAM が提供するイメージには、AWS SAM コマンドラインインターフェイス (CLI) と、サポートされている多数の AWS Lambda ランタイム用のビルドツールが含まれています。これは、AWS SAM CLI を使用したサーバーレスアプリケーションの構築とパッケージ化を容易にします。これらのイメージを CI/CD システムで使用して、AWS SAM アプリケーションの構築とデプロイを自動化できます。例については、「CI/CD システムを使用したデプロイ」を参照してください。
AWS SAM ビルドコンテナイメージ URI は、そのイメージに含まれる AWS SAM CLI のバージョンでタグ付けされています。タグがない URI を指定すると、最新バージョンが使用されます。例えば、public.ecr.aws/sam/build-nodejs14.x
は最新のイメージを使用しますが、public.ecr.aws/sam/build-nodejs14.x:1.24.1
は AWS SAM CLI バージョン 1.24.1 が含まれるイメージを使用します。
AWS SAM CLI のバージョン 1.33.0 より、x86_64
および arm64
の両方のコンテナイメージが、サポートされているランタイムで使用できます。詳細については、AWS Lambda デベロッパーガイドの「Lambda ランタイム」を参照してください。
バージョン 1.22.0 より前の AWS SAM CLI では、DockerHub がデフォルトリポジトリで、AWS SAM CLI はそこからコンテナイメージをプルしていました。バージョン 1.22.0 からは、デフォルトリポジトリが Amazon Elastic Container Registry Public (Amazon ECR Public) に変更されました。現在のデフォルト以外のリポジトリからコンテナイメージをプルするには、--build-image オプションが指定された sam build コマンドを使用できます。このトピックの最後にある例は、DockerHub リポジトリイメージを使用してアプリケーションを構築する方法を示しています。
イメージリポジトリ URI
以下の表には、AWS SAM を使用してサーバーレスアプリケーションを構築し、パッケージ化するために使用できる Amazon ECR Public のビルドコンテナイメージの URI がリストされています。
例
以下の 2 つのコマンド例は、DockerHub リポジトリからのコンテナイメージを使用してアプリケーションを構築します。
# Build a Node.js 12 application using a container image pulled from DockerHub sam build --use-container --build-image amazon/aws-sam-cli-build-image-nodejs12.x # Build a function resource using the Python 3.8 container image pulled from DockerHub sam build --use-container --build-image Function1=amazon/aws-sam-cli-build-image-python3.8