全部产品
阿里云办公

自定义构建镜像

更新时间:2018-09-13 11:01:00

构建环境中预置的的编译环境不能满足您的要求时。您可以使用自定义构建镜像的功能来定制所需的构建环境。

制作构建镜像

您需要按照如下的约束来编写构建环境使用的Dockerfile

  • 使用指定的基础镜像:registry.cn-beijing.aliyuncs.com/rdc-builds/base:1.0
  • 根据需要,安装软件和设置环境变量(admin为构建使用账号,不要删除或修改UID)。
  • 整个镜像大小需控制在1G之内。(如需调整联系VONE答疑同学)
  • 请不要自定义CMD,系统脚本已指定镜像的启动命令。否则,会影响镜像启动使得镜像上传失败

一个完整的Dockerfile示例如下:

  1. FROM registry.cn-beijing.aliyuncs.com/rdc-builds/base:1.0
  2. RUN cd /tmp && \
  3. wget http://rdc-public-software.oss-cn-hangzhou.aliyuncs.com/jdk-7u80-linux-x64.tar.gz && \
  4. tar xf jdk-7u80-linux-x64.tar.gz -C /srv/java && \
  5. ln -s /srv/java/jdk* /srv/java/jdk
  6. ENV JAVA_HOME=/srv/java/jdk \
  7. PATH=${PATH}:/srv/java/jdk/bin:/srv/java

在本地调试通过后,将镜像上传到阿里云或其他公网可访问的registry,且为公开权限。

录入镜像信息

镜像上传成功后,在“企业管理”->“构建镜像管理”页面,点击【新增镜像】按钮进行录入。build-image-page

注意,为了保证镜像地址的准确性,云效要求精确到digest级别,所以要求镜像地址格式为:REPOSITORY@DIGEST,例如:registry.cn-hangzhou.aliyuncs.com/rdc-template/test-build@sha256:468da687c09b865e87641d2fff9de8feea048fb64ed98884214642248b364129

如果您更新了镜像,需要到云效更新镜像digest,才能保证构建使用的是更新后的镜像。

使用构建镜像

在代码库的根目录下的<appName>.release文件,添加镜像配置:build.image=<your image repo url><your image repo url>需要与在镜像录入页面填写的镜像地址保持一致。修改后触发构建,新的构建会使用配置的镜像作为构建环境。