上篇博客介绍了持续交付,Jenkins是持续交付过程中的最重要的产品,让我们开始一起学习jenkins吧。
Jenkins介绍
Jenkins,原名Hudson,2011年改为现在的名字,它 是一个开源的实现持续集成的软件工具。官方网站:http://jenkins-ci.org/。
Jenkins 能实施监控集成中存在的错误,提供详细的日志文件和提醒功能,还能用图表的形式形象地展示项目构建的趋势和稳定性。
Jenkins特点
- 易安装:仅仅一个 java -jar jenkins.war,从官网下载该文件后,直接运行,无需额外的安装,更无需安装数据库;
- 易配置:提供友好的GUI配置界面;
- 变更支持:Jenkins能从代码仓库(Subversion/CVS)中获取并产生代码更新列表并输出到编译输出信息中;
- 支持永久链接:用户是通过web来访问Jenkins的,而这些web页面的链接地址都是永久链接地址,因此,你可以在各种文档中直接使用该链接;
- 集成E-Mail/RSS/IM:当完成一次集成时,可通过这些工具实时告诉你集成结果(据我所知,构建一次集成需要花费一定时间,有了这个功能,你就可以在等待结果过程中,干别的事情);
- JUnit/TestNG测试报告:也就是用以图表等形式提供详细的测试报表功能;
- 支持分布式构建:Jenkins可以把集成构建等工作分发到多台计算机中完成;
- 文件指纹信息:Jenkins会保存哪次集成构建产生了哪些jars文件,哪一次集成构建使用了哪个版本的jars文件等构建记录;
- 支持第三方插件:使得 Jenkins 变得越来越强大;
Jenkins发布流程
Master/Slave架构
Master/Slave相当于Server和agent的概念。Master提供web接口让用户来管理job和slave,job可以运行在master本机或者被分配到slave上运行。一个master可以关联多个slave用来为不同的job或相同的job的不同配置来服务。
安装部署:
环境:centos7+
1.安装Java
java -version
如果没有安装jdk,则先安装jdk,可以参考我的博客:centOS安装jdk
2. 安装Jenkins
下载jenkins源
sudo wget -O /etc/yum.repos.d/jenkins.repo http://jenkins-ci.org/redhat/jenkins.repo
sudo rpm --import http://pkg.jenkins-ci.org/redhat/jenkins-ci.org.key
安装
yum install jenkins
3.启动Jenkins
sudo service jenkins start #启动
sudo service jenkins stop #停止
如果启动报未找到JDK
添加软连接
ln -s /usr/java/jdk1.8.0_181/bin/java /usr/bin/java
4.查看log
tailf /var/log/jenkins/jenkins.log
5.修改配置文件
vi /etc/sysconfig/jenkins
JENKINS_HOME是Jenkins的主目录,Jenkins工作的目录都放在这里,Jenkins储存文件的地址,Jenkins的插件
JENKINS_USER是Jenkins的用户,拥有$JENKINS_HOME和/var/log/jenkins的权限。
JENKINS_PORT是Jenkins的端口,默认端口是8080
6.启动配置
访问http://<服务器ip>:8080/ 就可以进入Jenkins
界面。
cat /var/lib/jenkins/secrets/initialAdminPassword
好了,到现在jenkins安装完成,下篇博客将介绍jenkin的使用和配置,以及与各组件的整合:git,maven,docker,sonar等等,还将介绍jenkins pipeline的高级应用