图像存储库 - Amazon Serverless Application Model
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

图像存储库

Amazon SAM借助构建容器映像,简化无服务器应用程序的持续集成和持续交付 (CI/CD) 任务。Amazon SAM提供的映像包括Amazon SAM命令行界面 (CLI) 和许多支持的Amazon Lambda运行时的构建工具。这使得使用 Amazon SAM CLI 构建和打包无服务器应用程序变得更加容易。您可以将这些映像用于 CI/CD 系统来自动构建和部署应用程序。Amazon SAM有关示例,请参阅 使用 CI/CD 系统部署

Amazon SAM构建容器映像 URI 使用该映像中包含的 Amazon SAM CLI 版本进行标记。如果您指定未标记的 URI,则使用最新版本。例如,public.ecr.aws/sam/build-nodejs14.x使用最新的图像。但是,public.ecr.aws/sam/build-nodejs14.x:1.24.1使用包含 Amazon SAM CLI 版本 1.24.1 的图像。

从 Amazon SAM CLI 的 1.33.0 版开始,这两个镜像x86_64arm64容器映像都可用于支持的运行时。有关更多信息,请参阅《Amazon Lambda开发人员指南》中的 Lambda 运行时

注意

在 CLI 版本 1.22.0 之前,DockerHub是 Amazon SAM CLI 从中提取容器映像的默认存储库。Amazon SAM从版本 1.22.0 开始,默认存储库更改为亚马逊弹性容器注册表公共(Amazon ECR Public)。要从当前默认存储库以外的存储库中提取容器镜像,可以使用带--build-image选项的sam build命令。本主题末尾的示例说明了如何使用DockerHub存储库映像构建应用程序。

图像存储库 URI

下表列出了可用于构建和打包无服务器应用程序的 Amazon ECR 公共构建容器映像的 URI。Amazon SAM

注意

从 Amazon SAM CLI 版本 1.22.0 DockerHub 开始,亚马逊 ECR Public 已取代。如果您使用的是早期版本的 Amazon SAM CLI,我们建议您升级。

示例

以下两个示例命令使用DockerHub存储库中的容器映像构建应用程序:

使用从DockerHub以下来源提取的容器镜像构建Node.js 12应用程序

$ sam build --use-container --build-image amazon/aws-sam-cli-build-image-nodejs12.x

使用从DockerHub以下来源提取的Python 3.8容器镜像构建函数资源

$ sam build --use-container --build-image Function1=amazon/aws-sam-cli-build-image-python3.8