使用 Image Builder 创建自定义映像 - EC2Image Builder
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

使用 Image Builder 创建自定义映像

您可以通过多种不同的方式创建新的 Image Builder 映像。例如,您可以使用以下方法之一使用 Amazon Web Services Management Console 或创建图像 Amazon CLI。您也可以使用CreateImageAPI操作或运行构建管道来创建映像。有关与API操作相关的SDK请求,您可以参阅《Im EC2age Builder API 参考》中该命令的 “请参阅” 链接。

Amazon Web Services Management Console

要从现有管道创建映像,您可以手动运行管道,如下所示。您也可以使用管道向导从头开始创建新映像。请参阅 管道向导:创建 AMI管道向导:创建容器镜像,具体取决于您要创建的映像类型。

  1. 打开 EC2 Image Builder 控制台,网址为https://console.aws.amazon.com/imagebuilder/

  2. 在左侧导航窗格中,选择管道

  3. 选中要暂停的管道旁边的复选框。

  4. 要创建映像,请从 “操作” 菜单中选择 “运行管道”。这会启动管道。

您还可以指定运行管道的计划,或者根据您配置的规则使用 Amazon EventBridge 运行您的管道。

Amazon CLI

在中运行create-image命令之前 Amazon CLI,如果以下资源尚不存在,则必须创建这些资源:

所需的 资源
  • 配方-您必须为图片指定一个配方,如下所示:

    映像配方

    使用--image-recipe-arn参数为您的图片配方资源指定 Amazon 资源名称 (ARN)。

    容器配方

    使用--container-recipe-arn参数ARN为您的容器配方资源指定。

  • 基础架构配置-使用--infrastructure-configuration-arn参数ARN为您的基础架构配置资源指定。

您还可以指定映像所需的以下任意资源:

可选资源和配置
  • 分配配置-默认情况下,Image Builder 会将输出映像资源分配到您运行 create-image 命令的区域中的账户。要为您的分配提供其他目标或配置,请使用--distribution-configuration-arn参数ARN为您的分配配置资源指定。

  • 映像扫描 – 要为映像或容器测试实例上的 Amazon Inspector 调查发现配置快照,请使用 --image-scanning-configuration 参数。对于容器镜像,您还可以指定 Amazon Inspector 用于扫描的ECR存储库。

  • 映像测试-要禁用 Image Builder 测试阶段,请使用 --image-tests-configuration 参数。或者,你可以为它可以运行的时间设置一个超时值。

  • 映像标签 - 使用 --tags 参数向输出映像资源添加标签。

  • 映像工作流 – 如果您未指定任何构建或测试工作流,则 Image Builder 将使用其默认映像工作流创建映像。要指定已创建的工作流,请使用 --workflows 参数。

    注意

    如果您指定图像工作流程,则还必须在--execution-role参数中提供 Image Builder 用于运行工作流程操作的IAM角色或ARN名称。

以下示例显示如何使用使用 create-image Amazon CLI 命令创建映像。有关更多信息,请参阅 Amazon CLI 命令参考

示例:使用默认分配创建基本映像

aws imagebuilder create-image --image-recipe-arn arn:aws:imagebuilder:us-west-2:123456789012:image-recipe/simple-recipe-linux/1.0.0 --infrastructure-configuration-arn arn:aws:imagebuilder:us-west-2:123456789012:infrastructure-configuration/simple-infra-config-linux

输出

{ "requestId": "1abcd234-e567-8fa9-0123-4567b890cd12", "imageVersionList": [ { "arn": "arn:aws:imagebuilder:us-west-2:123456789012:image/simple-recipe-linux/1.0.0", "name": "simple-recipe-linux", ... } ] }

从中取消图像创建 Amazon CLI

要取消正在进行中的映像构建,请使用 cancel-image-creation 命令,如下所示:

aws imagebuilder cancel-image-creation --image-build-version-arn arn:aws:imagebuilder:us-west-2:123456789012:image/my-example-recipe/2019.12.03/1