1,jenkins简介:
Jenkins是一个开源软件项目,宗旨在提供一个开放易用的软件平台,使持续集成变成可能,Jenkins,之前叫做Hudson,是基于Java开发的一种持续集成工具,用于监控秩序重复的工作。
1.1,Jenkins 和 Hudson的区别:
目前最流行的一款持续集成及自动化部署工具。
Jenkins 和 Hundson 之间的关系:2009 年,甲骨文收购了 Sun 并继承了 Hudson 代码库。在 2011 年年初,甲骨文和开源社区之间的关系破裂,该项目被分成两个独立的项目:
Jenkins:由大部分原始开发人员组成
Hudson:由甲骨文公司继续管理
所以 Jenkins 和 Hudson 是两款非常相似的产品。
1.2,持续集成和非持续集成的区别:
1)非持续集成:
2)持续集成:
3)区别:
非持续集成人为打包,自己部署,持续集成借由jenkins由svn提交时触发钩子程序达到自动打包自动部署,不用人为操作省时省力。
1.3,环境要求。
- maven
- jdk
- tomcat
1.4,配置tomcat文件
1)修改tomcat下的conf目录的tomcat-users.xml文件,加上用户
[root@jxy1 apache-tomcat-8.5.11]# vi conf/tomcat-users.xml ##
<role rolename="manager-gui"/>
<role rolename="manager-script"/>
<role rolename="manager-jmx"/>
<role rolename="manager-status"/>
<user username="ginger" password="jy321" roles="manager-gui,manager-script,manager-jmx,manager-status"/>
2)在conf目录下的server.xml加上URIEncoding="UTF-8"
[root@jxy1 apache-tomcat-8.5.11]# vi conf/server.xml
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" URIEncoding="UTF-8"/>
3)tomcat8.5之后的版本,已经不支持远程登录,8.5之后的版本需要修改配置文件。
[root@jxy1 apache-tomcat-8.5.11]# vi webapps/manager/META-INF/context.xml
1.5,war包下载:
官方地址:https://jenkins.io/zh/download/
百度链接:https://pan.baidu.com/s/1iqavY3-Ht_qZYlumCVBJ2A 提取码:hr23
1.6,启动jenkins:
1)将下载好的war包放入tomcat的webapps下,直接启动tomcat
2)启动成功后访问http://192.168.92.111:8088/jenkins(ip和端口根据自己的)
3)看到下面所图显示就说明成功了,接下来要输入密码,在linux输入以下命令,然后在jenkins上输入你看到的密码点击继续:
[root@jxy1 /]# cat /root/.jenkins/secrets/initialAdminPassword
856e45bc1c0442e594e47ca79c6c19e5
4)点击安装推荐插件,下载插件会很缓慢:
5)成功失败都点击继续,因为下载失败的插件后面是可以重新下载的,下载失败的原因大多也是因为网络问题
6)可以创建用户,也可以直接用admin进行登录,我就是用admin直接进行登录的
7)路径没问题,点击保存并完成
8)点击开始使用jenkins
9)这是因为安装的时候,没有下载好,所以我们要再次进行安装。
10)搜索你要下载的依赖,对依赖进行下载
11)下载完毕就不会有报错信息了
1.7,常规配置信息
1)安装这两个插件
2)全局安全配置:
3)全局工具配置
1.8,jenkins自动构建:
注:后面需要svn,如果有没有创建svn仓库的可以看这篇博客先安装svn:https://www.cnblogs.com/joeyJss/p/14798411.html
1)新建任务:
2)添加svn的地址还有账户
3)对其进行保存
4)保存后对其选中
5) 配置构建maven
6)构建
7)点击选择构建后操作
8)增加构建后操作
9)对程序进行构建
10)查看构建信息
11)在linux的tomcat上可以看到jenkins部署的war包
1.7,配置自动构建钩子程序
1)选择我们的项目点击配置
2)配置构建触发器
3)linux触发自动构建 配置crul命令
curl命令:
curl -X -post -v -u admin:c3554e5bcda94e82b482b6fe4b55f1d1 http://192.168.92.111:8088/jenkins/job/JenkinsExample/build?token=lblz
解释:
1.curl -X -post -v -u #固定的
2.admin:c3554e5bcda94e82b482b6fe4b55f1d1 #是你的jenkins账户密码
3.http://192.168.92.111:8088/jenkins/job/JenkinsExample/build?token=lblz #刚刚触发自动构建的地址
4)将crul命令放入svn钩子程序
[root@jxy1 /]# cd /usr/local/src/svn/hooks/ #找到svn的hooks目录
[root@jxy1 hooks]# cp post-commit.tmpl post-commit #复制钩子程序
[root@jxy1 hooks]# chmod 755 post-commit #授权
[root@jxy1 hooks]# vi post-commit #编辑post-commit 加上我们的crul命令
5)测试自动构建部署