使用容器镜像构建服务

简述

百度智能云镜像构建服务支持在页面上配置基于代码仓库或Dockerfile的镜像构建规则,并由用户手动触发/代码仓库变更自动触发镜像构建,打通用户代码变更到容器部署的中间环节,方便用户更高效便捷地部署容器化服务。
注:Dockerfile中可以记录构建Docker镜像所需的一系列命令和参数,关于Dockerfile的格式和编写方法,请参考Docker官方文档

特色功能

  • 支持代码变更时自动触发构建
    可以在构建配置中开启,开启后,可以在代码提交/tag添加时自动触发镜像构建。

  • 支持海外构建
    代码构建过程中可能会依赖国外源,镜像构建服务默认提供海外构建功能。

  • 支持多阶段构建
    支持Docker新版本引入的多阶段构建特性。

基于Github代码仓库构建镜像

1.添加Github账号授权
在镜像仓库-我的镜像页面,点击左上角源代码授权管理,添加Github授权,根据网页提示完成Github账号授权后,该Github账号下的代码仓库可以作为镜像构建源使用。

2.添加基于Github代码仓库的构建配置
选择已有镜像,或新建一个镜像,作为构建后推送的目标镜像。点击镜像名称,在左侧选择镜像构建标签,可以新建镜像构建配置。

image.png

点击新建构建配置,选择从Github源码创建。

image.png

  • 构建配置名称:为该构建配置指定配置名称
  • Github账户:可选择一个用户已经授权的Github账户
  • 仓库:可选择一个Github账户下的代码仓库作为构建源
  • 分支:选择构建的代码分支
  • Dockerfile路径:Dockerfile相对于代码仓库根目录的路径。例如,Dockerfile位于代码根目录,且文件名为Dockerfile.build,则填写./Dockerfile.build
  • 开启自动构建:是否由代码库变更自动触发镜像构建
  • 触发条件:可选择自动触发镜像构建的条件。
    • 添加新tag时
      指有新tag添加到代码仓库时,自动以该tag所在的提交触发镜像构建
    • 提交代码到分支时
      用户选择的分支发生代码变更时,自动以分支最新提交触发镜像构建。
  • 版本名称:镜像构建生成的镜像版本名称规则,可以选择以构建对应的分支/tag名称,镜像构建时间,以及构建对应的提交hash,作为版本名称的一部分。可以指定多个目标版本名称,每条镜像构建规则最多可以填写5个版本名称。

3.配置完成后,可以由用户手动触发镜像构建,或代码库变更自动触发镜像构建(需要用户打开自动构建,并配置自动构建规则),构建记录可以在构建日志里查看,并通过日志详情查看具体构建输出。
4.如果通过构建配置成功构建并推送镜像,在镜像版本列表中创建方式一列,会显示镜像构建来源为自动构建/手动构建,并能够对应到构建使用的镜像构建配置,与用户直接推送镜像(用户推送)方式区分。

基于Dockerfile构建镜像

用户可以直接在页面上传或编写Dockerfile,基于该Dockerfile构建镜像。

1.在镜像仓库-我的镜像页面,选择已有镜像,或新建一个镜像,作为构建后推送的目标镜像。点击镜像名称,在左侧选择镜像构建标签,可以新建镜像构建配置。

image.png

点击新建构建配置,选择用Dockerfile创建。

image.png

  • 构建配置名称:为该构建配置指定配置名称
  • 配置Dockerfile:选择直接在页面编写/从本地上传Dockerfile文件。若选择本地上传Dockerfile文件,上传后文件内容将显示在下方的文本框中,用户可以进行进一步的编辑。
  • 版本名称:镜像构建生成的镜像版本名称规则,可以使用镜像构建时间作为版本名称的一部分。可以指定多个目标版本名称,每条镜像构建规则最多可以填写5个版本名称。

2.配置完成后,可以由用户手动触发镜像构建,构建记录可以在构建日志里查看,并通过日志详情查看具体构建输出。

3.如果通过构建配置成功构建并推送镜像,在镜像版本列表中创建方式一列,会显示镜像构建来源为手动构建,并能够对应到构建使用的镜像构建配置,与用户直接推送镜像(用户推送)方式区分。