基于Maven构建产物制作Docker镜像并发布到镜像仓(内置执行机/图形化构建)
应用场景
本实践为您介绍如何使用CodeArts Build将构建产物通过Dockerfile文件制作成Docker镜像,并发布到容器镜像服务的镜像仓库,您可以使用容器镜像中的构建产物进行编译或者部署。
操作流程
流程 |
说明 |
---|---|
为本实践新建项目。 |
|
为本实践创建构建过程中使用的代码文件。 |
|
新建本实践中需要使用的构建任务并按照本实践场景配置任务并执行。 |
|
查看本实践的构建结果,包括查看构建日志和结果文件。 |
新建项目
- 使用华为云账号登录华为云控制台页面。
- 单击页面左上角,在服务列表中选择 。
- 单击“立即使用”,进入CodeArts服务首页。
- 在首页单击“新建项目”,选用“Scrum”项目模板。
- 项目名称填写“build-bestpractice”,其他保持默认即可。
- 单击“确定”后,进入到“build-bestpractice”项目下。
新建CodeArts Repo代码仓
- 在页面导航栏选择 。
- 单击“新建仓库”,选择“模板仓库”,单击“下一步”。
- 选择“Java Maven Demo”模板,单击“下一步”。
- 填写代码仓库名称为“build_docker_image_repo”,其他参数保持默认即可。单击“确定”,代码仓创建完成,跳转到代码仓详情页面。
- 在代码仓根目依次单击
。图1 新建文件
- 文件名命名为“Dockerfile”,复制如下代码,粘贴到文件内容,如图3所示,单击“提交”。
FROM ubuntu:latest # set maintainer LABEL maintainer=build RUN mkdir /release_app COPY ./target/javaMavenDemo-1.0.jar /release_app/maven_app.jar USER build
其中“javaMavenDemo-1.0.jar”为“pom.xml”文件里定义的“${artifactId}-${version}.${packaging}”,如图2所示。
新建构建任务
- 在页面导航中选择 。
- 单击“新建任务”,根据表2填写参数信息,单击“下一步”。
表2 基本信息配置 参数
说明
任务名称
自定义任务名称,例如:build_docker_image_task。
代码源
选择构建时拉取的代码源,这里选择“Repo”。
代码仓
选择新建CodeArts Repo代码仓中新建的代码仓库名称“build_docker_image_repo”。
默认分支
选择默认“master”即可。
- 选择“空白构建模板”,单击“确定”按钮,构建任务创建完成,自动跳转至构建步骤配置页面。
- 在“构建步骤”页签,单击“图形化”,单击左侧“点击添加构建步骤”,添加“Maven构建”,参数保持默认即可。
- 单击“添加步骤”,在右侧区域“容器类”页签中,单击“制作镜像并推送到SWR仓库”所在行的“添加”,按照图4配置参数。
- 单击页面右上角“保存并执行”,在弹出的窗口中单击“确定”,自动跳转到构建任务执行页面。