- 最新动态
- 功能总览
- 产品介绍
- 快速入门
-
用户指南
- 编译构建服务(CodeArts Build)使用流程
- 开通CodeArts Build
- 配置CodeArts Build项目级角色权限
- 新建构建任务
-
配置构建任务
- 构建任务基础配置
- 选择构建步骤
-
配置构建步骤
- 使用Maven构建
- 使用Android构建
- 使用Npm构建
- 使用Gradle构建
- 使用Yarn构建
- 使用gulp构建
- 使用Grunt构建
- 使用mono构建
- 使用PHP构建
- 使用SetupTool构建
- 使用PyInstaller构建
- 使用shell命令构建
- 使用Gnu-arm构建
- 使用CMake构建
- 使用Ant构建
- 使用Kotlin构建
- 使用Go语言构建
- 使用Ionic Android App构建
- 构建Android快应用
- 使用Sbt构建
- 使用Grails构建
- 使用Bazel构建
- 使用Flutter构建
- 使用HarmonyOS构建
- 通过Docker命令操作镜像
- 生成单元测试报告
- 自定义构建环境
- 使用自定义环境构建
- 下载软件发布库中的软件包
- 上传软件包到软件发布库
- 上传文件到OBS
- 配置构建任务参数
- 配置构建任务执行计划
- 配置构建任务角色权限
- 配置构建任务事件通知
- 执行构建任务
- 查看构建任务
- 管理构建任务
- 查询审计日志
- 参考
- 旧版手册页面
-
最佳实践
- 基于Maven构建产物制作Docker镜像并发布到镜像仓(内置执行机/图形化构建)
- 使用Maven构建上传软件包至私有依赖库(内置执行机/图形化构建)
- 使用Maven构建实现私有依赖包的上传及下载引用(内置执行机/图形化构建)
- 使用NPM构建上传软件包至软件发布库(内置执行机/图形化构建)
- 使用自定义执行机执行Maven构建(自定义执行机/图形化构建)
- 使用Maven构建上传软件包和推送镜像到SWR(内置执行机/代码化构建)
- 使用Maven构建执行多任务构建工程(内置执行机/代码化构建)
- 基于私有依赖库使用Maven构建并上传软件包(内置执行机/图形化构建)
- 使用自定义构建环境执行构建任务(内置执行机/图形化构建)
- API参考
-
常见问题
- 通用构建问题
- Maven构建
- Android构建
- Gradle构建
-
Npm构建
- 执行Npm构建时,报错提示JavaScript heap out of memory
- 执行Npm构建时,报错提示enoent ENOENT: no such file or directory
- 执行Npm构建时,报错提示Module not found: Error: Can't resolve ...
- 执行Npm构建失败,但不显示错误日志
- 执行Npm构建时,报错提示npm cb() never called
- 执行Npm构建时,报错提示gyp ERR! stack Error: EACCES: permission denied
- 执行Npm构建时,报错提示eslint: error 'CLODOP' is not defined
- 执行Npm构建时,报错提示node-sass下载失败
- 执行Npm构建时,报错提示error: could not write config file
- Npm构建耗时且安装依赖缓慢
- 执行Npm构建时,报错提示找不到依赖版本
- 镜像问题
- 视频帮助
- 通用参考
链接复制成功!
通过Docker命令操作镜像
图形化构建
在配置构建步骤中,添加“执行Docker命令”构建步骤,参考表1配置参数。
参数 |
说明 |
---|---|
步骤显示名称 |
构建步骤的名称,可自定义修改。
|
工具版本 |
根据用户实际开发环境的需要,选择对应的工具版本。 CodeArts Build支持的工具版本,可查看构建工具版本。若当前的工具版本不满足您的使用要求,您可以自定义构建环境。 |
命令 |
单击“添加”,新增一条命令行,请根据需要选择并配置命令。CodeArts Build支持的Docker命令可参考编译构建支持的Docker命令。 可通过拖动命令调整命令执行顺序。 |
失败后是否继续运行 |
当前步骤执行失败后是否继续执行下一个步骤,根据实际使用场景选择是或否。 |
代码化构建
参考以下代码示例,修改在创建代码化构建使用的YAML文件中的BUILD部分代码信息。
1 2 3 4 5 6 7 8 |
version: 2.0 # 必须是2.0 steps: BUILD: - docker: inputs: command: | docker pull swr.xx-xxxxx-x.myxxcloud.com/codeci/dockerindocker:dockerindocker18.09-1.3.2 ignore_fail: true |
参数 |
类型 |
说明 |
---|---|---|
command |
string |
执行命令,每个命令一行。支持的docker命令可参考编译构建支持的Docker命令。 |
ignore_fail |
string |
用于控制当前步骤执行失败后是否继续执行下一个步骤。
|
编译构建支持的Docker命令
- docker login:登录docker仓库。
用法:docker login [options] [server]
options填写方法如下表,server为docker仓库地址。参数
对应短名称
说明
--password
-p
登录仓库的用户密码。
--username
-u
登录仓库的用户名。
--password
-stdin
从标准输入获取用户密码。
示例:docker login -u jack -p 12345 mydocker-registry.com
该示例表示使用jack用户远程登录地址为“mydocker-registry.com”的仓库,密码为“12345”。
高级用法
从文件里获取密码:cat ~/my_password.txt | docker login --username jack --password-stdin
- docker build:通过Dockerfile或者上下文制作镜像。上下文可以是构建执行所在的本地路径“Path”,也可以是远程URL,如Git库、tarball或文本文件等,还可以是“-”。
用法:docker build [options] Path | URL | -
options填写方法如下表。Path/URL/-为上下文来源。参数
对应短名称
说明
--file
-f
Dockerfile文件路径,默认为“./Dockerfile”。
--tag
-t
“镜像名:标签”格式。
示例:docker build -t mydocker-registry.com/org/alpine:1.0 -f ./Dockerfile .
该示例表示使用当前目录且标签为“mydocker-registry.com/org/alpine:1.0”的Dockerfile制作镜像。
- docker push:推送镜像到指定的地址。
用法:docker push [options] name[:tag]
示例:docker push mydocker-registry.com/org/alpine:1.0
该示例表示将“mydocker-registry.com/org/alpine”镜像的1.0版本推送到远程仓库。
- docker pull:从镜像仓库下载镜像到本地。
用法:docker pull [options] name[:tag|@digest]
options填写方法如下表。参数
对应短名称
说明
--all-tags
-a
下载镜像仓库所有标识tag的镜像。
示例:docker pull mydocker-registry.com/org/alpine:1.0
该示例表示从远程仓库拉取版本号为1.0的mydocker-registry.com/org/alpine镜像。
- docker tag:修改镜像的标签。
用法:docker tag source_image[:tag] target_image[:tag]
其中source_image[:tag]表示需要修改标签的镜像,target_image[:tag]表示目标镜像。
示例:docker tag mydocker-registry.com/org/alpine:1.0 mydocker-registry/neworg/alpine:2.0
该示例表示,将“mydocker-registry.com/org/alpine”镜像的标签从“1.0”改为“2.0”。
- docker save:保存一个或者多个镜像到tar类型的文件,默认是标准输出流。
用法:docker save [options] image [image ...]
options填写方法如下表。参数
对应短名称
说明
--output
-o
写文件,非使用标准输出。
示例:docker save -o alpine.tar mydocker-registry.com/org/alpine:1.0 mydocker-registry.com/org/alpine:2.0
该示例表示将mydocker-registry.com/org/alpine:1.0镜像和mydocker-registry.com/org/alpine:2.0镜像打包到alpine.tar。
- docker logout:从镜像仓库登出。
用法:docker logout [server]
示例:docker logout mydocker-registry.com
该示例表示登出地址为mydocker-registry.com的镜像仓。