文档

什么是镜像构建服务(ImageBuilder)

更新时间:

镜像构建服务(ImageBuilder)是阿里云提供的一站式镜像定制、构建、维护、验证、共享、分发服务。镜像构建服务的主要功能是镜像模板,您可以通过镜像模板完成镜像的定制、分发、共享等操作,实现镜像内应用的更新与回滚。本文介绍镜像构建服务的应用场景、优势以及如何使用镜像构建服务。

应用场景

场景

说明

自定义镜像定制

您可以通过镜像模板,以公共镜像或已有的自定义镜像为基础,定制您需要的自定义镜像。

服务器应用运维

当您的服务器应用需要更新版本时,可以通过镜像模板实现。您只需要在镜像模板中设置源服务器的镜像信息,然后使用构建模板命令完成服务器内应用的更新。

您可以将每次更新应用创建的镜像模板作为一个应用版本,当您有业务需要时,可以通过不同版本的镜像模板快速完成应用的更新或回滚。

镜像管理

当您的业务需要在多地域、多阿里云账号下同步完成镜像的定制或版本迭代时,您可以通过镜像模板在完成镜像内容定制的同时,指定该镜像需要分发的地域或共享的阿里云账号。系统将帮助您在指定的地域下生成对应的镜像,或将对应的镜像共享至指定的阿里云账号。

镜像构建服务典型应用场景的操作示例,请参见镜像构建服务(ImageBuilder)最佳实践

优势

  • 高效

    • 镜像构建服务兼容Dockerfile的一部分命令,便于您快速构建镜像。如果您熟悉Dockerfile命令,可以直接使用Dockerfile编辑命令,然后通过控制台导入Dockerfile模板。

    • 一站式的服务,为您节省了创建ECS实例、登录ECS实例完成运维操作,以及镜像的创建、更新、复制、共享所需的手动操作时间。

  • 安全

    执行构建任务时,系统会自动帮助您检查镜像模板的各配置项是否存在异常。例如,检查中转实例的相关资源配额是否充足、构建模板命令是否正确执行等。

计费

镜像构建服务本身不收费。通过镜像模板构建镜像时,系统会自动创建一台临时的ECS实例用于构建镜像,临时的ECS实例为按量计费实例,将收取一定的费用。更多信息,请参见按量付费

说明

临时ECS实例的各配置项默认保持系统定义的值,例如,实例规格默认按vCPU和内存最小的原则进行选择。您也可以根据业务需求手动设置临时ECS实例的各配置项。

使用镜像构建服务

使用镜像构建服务的业务流程如下所示。

image
  1. (可选)创建镜像组件。

    镜像组件的内容由一条或多条构建模板命令组成。您可以通过复用镜像组件,快速完成镜像模板内容的定制。其中,构建模板命令是镜像构建服务提供的规范、透明的镜像定制方式,兼容Dockerfile的部分命令。

    系统默认提供了系统组件和自定义组件两种方式:

    • 系统组件:系统组件包含了操作系统本身提供的预装软件或功能。这些组件通常是操作系统的一部分,如系统库、命令行工具、系统服务等,用户可以直接使用。

    • 自定义组件:但对于某些特定的应用场景和需求,可能需要自定义组件或特定版本的软件,此时就需要根据特定的业务需求,在镜像构建过程中添加自定义的软件包、应用程序等。这些组件不是操作系统的一部分,而是根据用户需求定制的。就稳定性和可靠性而言,推荐您使用系统组件创建镜像模板。

    更多信息,请参见镜像构建服务(ImageBuilder)指令集以及(可选)创建镜像组件

  2. 创建镜像模板。

    镜像模板是镜像构建服务的主要功能,通过指定源镜像、镜像组件或构建模板命令实现对镜像内容的定制。同时支持将定制的镜像生成在指定的地域或共享至指定的阿里云账号。具体操作,请参见创建镜像模板

  3. 执行镜像构建任务。

    在创建镜像模板的过程中,如果未启动立即执行任务,您需要手动执行任务来构建镜像。手动执行镜像模板时会生成一个构建任务,任务执行过程中会自动检测镜像模板中各配置项是否存在异常。具体操作,请参见执行构建任务

  4. 查看并使用定制化的自定义镜像。

    您可以根据业务需要,通过定制化的自定义镜像创建ECS实例或更换实例的操作系统。