跳转至

使用 jenkins 与 docker 完成 java 项目持续集成


2017-05-18 by dongnan

开始之前

思维导图

某个java项目已经完成容器化(docker),java项目持续集成场景如下图所示。

基本流程

  • git 上有新的 push 产生时,触发 jenkins构建任务。
  • jenkins 使用git插件 pull项目代码,并使用 maven插件完成如 build/make/test 等上线前的准备工作。
  • jenkins 调用脚本插件,将编译后的文件(配置文件),附加到 tomcat 镜像中。
  • 将定制完成的 docker 镜像推送到 harbor 仓库。

需要的组件

  • jenkins 持续集成工具。
  • git 仓库。
  • maven (java 构建工具)。
  • harbor (docker 仓库)。
  • tomcat (docker 镜像)。

目标

  • 借助 jenkins 工具,自动构建 java项目,并将编译好 war包附加到 tomcat 镜像中。
  • 使用 rancher 平台提供的 web/cli接口,完成项目的更新与升级。

持续集成的概念

持续集成,continuous integration ,简称 ci

它倡导团队开发成员必须经常集成他们的工作,甚至每天都可能发生多次集成。

而每次的集成都是通过自动化的构建来验证,包括自动编译、测试和发布,从而尽快地发现集成错误,让团队能够更快的开发产品。

持续集成的特点

它是一个自动化的周期性的集成测试过程,从拉取代码、编译构建、运行测试、结果记录、测试统计等都是自动完成的,无需人工干预。

需要有专门的集成服务器来执行集成构建。需要有代码托管工具支持。

持续集成的作用

保证团队开发人员提交代码的质量,减轻了软件发布时的压力。 持续集成中的任何一个环节都是自动完成的,无需太多的人工干预,有利于减少重复过程以节省时间、费用和工作量;

参考

使用rancher和droneci建立超高速docker ci/cd流水线

回到页面顶部