简介
Jenkins是帮我们将代码进行统一的编译打包、还可以放到tomcat容器中进行发布。意思是我们通过配置,将以前:编译、打包、上传、部署到Tomcat中的过程交由]enkins,Jenkins通过给定的代码地址URL,将代码拉取到其“宿主服务器”( lenkins的安装位置),进行编译、打包和发布到web容器中。
是一个开源的、提供友好操作界面的持续集成(CI)工具,起源于Hudson(Hudson是商用的),主要用于持续、自动的构建/测试软件项目、监控一些定时执行的任务。jenkins用Java语言编写,可在Tomcat等流行的servlet容器中运行,也可独立运行。
jenkins通常与版本管理工具(SCM)、构建工具结合使用﹔常用的版本控制工具有SVN、GIT。jenkins构建工具有Maven 、 Ant 、Gradle。
实现持续集成/持续发布
开发(git) -->git主库-->jenkins(git+jdk+tomcat+maven打包+测试)-->发布到tomcat服务器
包含两部分:CI/CD
Cl (continuousintegration-Cl)持续集成 代码合并,构建,部署,测试都在一起,不断的执行的过程,并对结构反馈。
CD e(continuous Deloyments ) 持续交付 把代码部署到测试环境,预生产环境
CD (continous Delivery) 持续部署 将最终的产品发布到生产环境,给用户使用。
Jenkins目标
是监控软件开发流程
快速显示问题
提高开发效率
过程控制
Jenkins特性
易于安装
易于配置
测试报告
文件识别
分布式构建
插件支持
任务(Job)和构建(build)
jenkins部署
基础部署
1.部署git
2.jdk环境部署
3.部署maven
4.部署tomcat
5.部署Jenkins
6.管理插件
简介
我们配置的是git + maven方式的自动化部署,所以git和maven的相关插件是必须的,还有一个ssh用于机器间的文件传送
安装插件Deploytocontainer:支持自动化将代码部署到tomcat容器
系统管理-->插件管理-->可选插件-->过滤Deployto container->勾选,点击下边的按钮:直接安装,这个可能时间较久,等待即可。
安装插件Maven Integration:jenkins利用maven编译,打包,所需插件
同第一个步骤
安装git相关3个插件
GitHub Authentication
GitHub Branch Source
GitHub Organization Folder(可能已经弃用)
安装插件:Publish Over SSH
7.检查错误配置
左侧:点击"系统管理”
1.如果有"编码问题"错误,在Tomcat->conf->server.xml文件中修改即可
2.如果有"发向代理设置有误"错误,请忽略
8.Jenkins系统设置
路径: 系统管理->(全局工具配置)Global ToolConfiguration,配置jdk,git,maven的根目
关于重启jenkins(略)
http://IP:8080/jenkins/exit
http://IP:8080/jenkins/reload
9.SSH设置
(192.168.0.115) jinkens服务器上的maven将开发产生的*.war包。通过SSH自动推送到远程tomcat服务器上(192.168.0.109)。需要手工配置ssh key。配合自动化推送
192.168.0.115是jenkins
192.168.0.109是tomcat网站服务器,代表业务服务器
部署
1.jenkins服务器准备秘钥认证
2.在jenkins上配置ssh信息
1.复制密钥
cat .ssh/id_pub
2.在系统配置中system Configure
3.设置
10.新建任务
1.创建任务
2.定义名称和类型
创建一个maven项目
3.设置maven
#公有git仓库
设置描述
选择版本控制器和仓库地址
设置触发器(保持默认)
设置构建(编译打包)
构建后操作
说明
source file target/*.war 构建之后,在jenkins服务器上是可以自动看到war包的。
# ls/rootl.jenkinsljobs/testjob1/builds/target/*.war
Remove prefix 自动删除路径前缀(不需要创建路径前缀)
Remote directory # mkdir -p ljenkins/war
tomcat业务服务器上的路径,需要提前在192.168.0.109 (tomcat)上创建录。
用来存放网站源代码。(需要后台创建)
Exec command
tomcat ( 192.168.0.109)在接收到源码之后的自定义动作。
比如:将源码拷贝到网站的主目录(/jenkins),并执行一些其他操作如器等(或创建文件touch)(需要后台创建)
#mkdir /jenkins/sh
# cat ljenkins/sh/deploy.shcp -r /jenkins/war/*.war /jenkinstouch /tmplaaaaaa.txt
#chmod +x /jenkins/sh/deploy.sh
保存
11.构建任务
1.立即构建
⒉.查看构建结果
在控制台输出查看
3.观察tomcat网站服务器,代码和脚本