背景
Jenkins是基于Java开发的一种持续集成工具,主要用于持续、自动构建/测试软件项目、监控外部任务的运行,功能包括:
持续的软件版本发布/测试项目。
监控外部调用执行的工作。
为什么使用Jenkins?
先来看看一般的后端项目发布流程:
1、本地或打包服务器利用maven打成war包
2、远程或者SSH连上项目服务器
3、停掉tomcat,删除旧包和缓存,将新打的包放进去
4、重启tomcat,完成
看似步骤简单,其实占用了大量开发和运维的时间。
使用Jenkins后:
1、点击立即构建,完成。
什么?点击个按钮就完成了?没错,就是个按钮。其实在你点击按钮后Jenkins已经帮你把上述该走的流程后台跑了一遍了。再搭配Gitlab的githooks可实现提交代码后自动构建发布,连按钮也不需要点了。
在开发项目的过程中会部署测试环境来验证产品功能,重复以上操作会显得很繁琐,浪费大量时间,所以使用Jenkins来实现持续集成,对整个开发项目的过程有着重要的意义。使用Jenkins后,可节省手动发布时间成本,避免人工打包出错,同时也能及时发现系统开发集成过程中产生的问题。
本文接下来介绍如何基于Jenkins+Maven+Git(GitLab)持续集成Java项目。
流程概览上图为Java测试环境从代码提交到应用部署的自动化完整流程。
下面我们具体来看Jenkins的安装和配置。
环境准备现场测试环境如下,两台Linux虚拟机,安装好以下软件:
名称 |
IP |
安装软件 |
代码托管、持续集成 |
192.168.3.144 |
JDK1.8、Maven3.5.4、Git1.7.1、Gitlab、Jenkins |