一、什么是持续集成?

(1)Continuous integration(CI)

持续集成是一种软件开发实践,即团队开发成员经常集成他们的工作,通常每个成员至少集成一次,也就意味着每天可能会发生多次集成。每次集成都通过自动化的构建(包括编译,发布,自动化测试)来验证,从而尽快地发现集成错误。许多团队发现这个过程可以大大减少集成的问题,让团队能够更快的开发内聚的软件。

(2)没有持续集成

项目做模块集成的时候,发现很多借口都不通==>浪费大量时间

需要手动去编译打包最新的代码==>构建过程不透明

发布代码,上线,基本靠手工==>脚本乱飞

(3)持续集成最佳实践:

维护一个单一的代码库

使构建自动化

执行测试是构建的一部分

集成日志及历史记录

使用统一的依赖包管理库

每天至少集成一次

(4)jenkins介绍

Jenkins只是一个平台,真正运作的都是插件。这就是jenkins流行的原因,因为jenkins什么插件都有 
Hudson是Jenkins的前身,是基于Java开发的一种持续集成工具,用于监控程序重复的工作,Hudson后来被收购,成为商业版。后来创始人又写了一个jenkins,jenkins在功能上远远超过hudson

Jenkins官网:https://jenkins.io/

Jenkins下载:http://updates.jenkins-ci.org/

 jenkins的全部镜像:http://mirrors.jenkins-ci.org/status.html

(5)部署代码上线流程:

1.代码获取(直接拉取)

2.编译      (可选)

3.配置文件放进去

4.打包

5.scp到目标服务器

6.将目标服务器移除集群

7.解压并放置到Webroot

8.Scp 差异文件

9.重启      (可选)

10.测试

11.加入集群

linux下jenkins的安装步骤如下:

1、先安装需要的jdk环境,jenkins最新版的安装,要求JDK必须是1.8及以上。

2、安装tomcat,官网下载https://tomcat.apache.org/download-80.cgi的zip包,上传到linux服务器,解压,执行bin目录下startup.sh脚本启动tomcat,http的默认端口8080,在server.xml中配置。

执行startup.sh时候可能会报错:Cannot find ./catalina.sh,解决方法:执行chmod +x *.sh   ,将所有sh脚本赋上可执行权限。

3、http://ftp-chi.osuosl.org/pub/jenkins/war-stable/2.190.3/jenkins.war地址下载jenkins的war包,将war包上传到服务器tomcat的webapps文件夹下,重新启动tomcat。

4、访问:http://localhost:8080/jenkins页面,首次访问会进入下面页面:

2、进入/root/.jenkins/secrets/initialAdminPassword文件查看初始密码,复制到管理员密码栏,点继续。

3、页面会进入下面界面:

 4、查看/root/.jenkins/hudson.model.UpdateCenter.xml文件,更改https://updates.jenkins.io/update-center.json为https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json,或者https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json。重启tomcat,重新访问jenkins页面。进入如下界面。

 5、选择推荐的插件安装。

6、安装好后,进入下面界面输入用户名密码。

12-24 09:41