持续交付提供镜像构建推送至镜像仓库服务,支持将代码仓库的源码编译构建为 Go、 Java、Node.js 或 Python 版本的镜像文件,并存储于火山引擎镜像仓库,用于后续的部署任务。
编辑任务时,需要根据实际的源码调整 编译命令、contextpath、dockerfile 参数值,配置错误可能导致任务运行失败。
镜像仓库
镜像构建完成后需要推送至指定的仓库进行保存。推送至火山引擎镜像服务仓库保存前,需完成以下准备工作。
持续交付
使用镜像构建推送至镜像仓库服务任务,需完成以下准备工作。
登录 持续交付控制台。
在左侧导航栏选择 工作区,进入 工作区 页面。
选择目标工作区名称,进入该工作区。
单击 创建流水线,弹出 选择流水线模板 对话框。
选择构建镜像的流水线模板。完成后单击 确定,进入 编辑流水线 页面。
配置代码源。
a. 单击输入源位置,弹出 配置代码源 对话框。
b. 按要求填写以下参数。
配置项 | 说明 |
---|---|
类型 | 选择代码仓库类型。根据准备工作中创建的代码源类型选择。 |
代码源 | 配置该流水线的代码源。选择准备工作中创建的代码源。 |
默认分支 | 默认分支为流水线运行时默认选用的代码仓库分支。支持选择或手动输入。 |
Webhook 设置 | Webhook 设置用于启用代码源触发规则,具体操作请参见 代码源触发 。本示例不启用。 |
c. 单击 确定,完成代码源配置。
配置镜像构建推送至镜像仓库服务。
a. 配置编译构建步骤。
配置项 | 说明 |
---|---|
步骤名称 | 默认为编译构建,支持自定义步骤名称。 |
语言 | 选择编译构建使用的语言。 |
版本 | 选择编译构建使用的语言版本,不同语言提供不同的预置版本。 |
编译命令 | 输入编译命令。命令框中为默认的编译命令,请根据实际业务自行调整。 |
b. 配置镜像打包推送至镜像仓库服务。
配置项 | 说明 |
---|---|
步骤名称 | 默认为镜像打包推送至镜像仓库服务,支持自定义步骤名称。 |
地域 | 选择要推送的镜像仓库所在的地域。 |
仓库实例 | 选择准备工作中已创建的目标仓库实例。 |
命名空间 | 选择准备工作中已创建的目标命名空间。 |
OCI制品仓库 | 配置要推送的 OCI 制品仓库。如果 OCI 制品仓库不存在,系统将自动创建。 |
镜像版本 | 自定义镜像版本号。本示例使用
|
contextpath | docker build 命令执行上下文路径。填写相对于代码根目录的路径,默认为. 。 |
多框架构建 | 如果您希望构建 linux/arm64 架构的镜像,或者希望同时构建 linux/arm64 和 linux/amd64 两种架构的镜像,请勾选多框架构建功能的启用框。本示例不启用多框架构建功能,默认构建 linux/amd64 架构的镜像。 |
Dockerfile | 选择文件路径,填写 Dockerfile 文件相对于代码库根目录所在路径,默认为./Dockerfile 。 |
产出物 | 该步骤的产出物为镜像,默认名称为 DockerOutput,支持自定义命名。 产出物可用于后续部署任务。 |
其余页签保持默认配置,单击页面右下角 保存,完成创建流水线。
运行流水线。
配置项 | 说明 |
---|---|
代码源 | 显示该条流水线使用的代码源。 |
目标 | 选择流水线拉取代码的方式,支持按照分支、Tag、Commit ID 三种方式拉取代码。此处使用创建流水线时设置的默认分支。 |
运行说明 | 添加本次运行的备注信息,可以为空。 |
流水线运行成功,镜像构建完成并推送至指定镜像仓库地址。如下图所示,镜像构建推送至镜像仓库服务输出本示例推送的镜像地址。
您也可以登录对应的镜像仓库地址进行查看。如下图所示,本示例中构建的镜像已经推送到了指定 OCI 制品仓库。
如何通过环境变量设置镜像版本号?