Jenkins详细教程-jenkins安装与配置
⼤纲
1.背景
  在实际开发中,我们经常要⼀边开发⼀边测试,当然这⾥说的测试并不是程序员对⾃⼰代码的单元测试,⽽是同组程序员将代码提交后,由测试⼈员测试;
  或者前后端分离后,经常会修改接⼝,然后重新部署;
  这些情况都会涉及到频繁的打包部署;
  ⼿动打包常规步骤:
  1.提交代码
  2.问⼀下同组⼩伙伴有没有要提交的代码
  3.拉取代码并打包(war包,或者jar包)
  4.上传到Linux服务器
  5.查看当前程序是否在运⾏
  6.关闭当前程序
  7.启动新的jar包
  8.观察⽇志看是否启动成功
  9.如果有同事说,⾃⼰还有代码没有提交......再次重复1到8的步骤(⼀上午没了)
  那么,有⼀种⼯具能够实现,将代码提交到git后就⾃动打包部署勒,答案是肯定的:Jenkins
  当然除了Jenkins以外,也还有其他的⼯具可以实现⾃动化部署,如Hudson等
  只是Jenkins相对来说,使⽤得更⼴泛。
2.Jenkins服务器搭建及基本配置
2.1.简介
  Jenkins是⼀个开源软件项⽬,是基于Java开发的⼀种持续集成⼯具,⽤于监控持续重复的⼯作,旨在提供⼀个开放易⽤的软件平台,使软件的持续集成变成可能。
2.2.Jenkins⾃动化部署实现原理
2.3.Jenkins部署环境
  基本环境:
  1.jdk环境,Jenkins是java语⾔开发的,因需要jdk环境。
  2.git/svn客户端,因⼀般代码是放在git/svn服务器上的,我们需要拉取代码。
  3.maven客户端,因⼀般java程序是由maven⼯程,需要maven打包,当然也有其他打包⽅式,如:gradle
  以上是⾃动化部署java程序jenkins需要的基本环境,请⾃⼰提前安装好,下⾯着重讲解Jenkins的安装部署配置。
2.4.Jenkins安装
  1.下载安装包;
  2.在安装包根路径下,运⾏命令java -jar jenkins.war --httpPort=8080,(linux环境、Windows环境都
⼀样);
  4.填写初始密码,激活系统
  5.进⼊插件安装选择
  这⾥建议选择,推荐安装的插件,保证基本常⽤的功能可以使⽤。
  选择后,进⼊插件安装页⾯
  6.设置初始⽤户和密码
  7.进⼊系统,安装完成
  注意,如果还是进⼊不了系统,需要稍等⼀下,或者刷新页⾯,如果还是进⼊不了,需要重新启动jenkinds服务器。2.5.Jenkins基本配置
2.5.1.系统初始化配置
  1.Configure System (系统设置)
  在系统设置这⾥,我们只需要设置最后⾯的⼀项,配置远程服务器地址,
  即我们代码最终运⾏的服务器地址信息,就像我们之前⼿动部署时使⽤xshell登录Linux服务器⼀样,
  当然这⾥是可以配置多台远程Linux服务器的,配置完成后点击保存即可,为后⾯我们配置⾃动化部署做准备,配置如下图 
  2.Configure  Global Security (全局安全配置)
  a.配置⽤户相关的权限
  b.配置钩⼦程序(当⽤代码更新时通知)访问权限,避免报403错误
  默认是勾选上了的,这⾥去掉勾选
  3.Global Tool Configuration (全局⼯具配置 )
  a.配置maven的全局settings路径
  b.配置jdk
  c.配置git
  d.配置maven的安装路径
  4.配置必要插件
  主要是检查如下这两个插件是否已安装
  插件1:Publish over SSH
  插件2:Deploy to container Plugin
  到这⾥,我们配置⼀个⾃动化部署的的java程序(springBoot+maven+gitHub),基本必要配置就差不多了,后⾯配置过程中如果需要在配置。
3.Jenkins⾃动化部署(springBoot+maven+gitHub)项⽬
 3.1.Jenkins服务器上创建项⽬和配置
  ⼤体步骤:General(基础配置)--》源码管理--》构建触发器--》构建环境--》构建--》构建后操作
  1.创建⼀个⼯程
  2.General(基础配置)
  仅需填写标准部分,其他可不填写
  3.源码管理
  上图中点击“添加”按钮添加⼀组账号和密码
  4.构建触发器
  如上图:当前项⽬的回调地址为:
  只要执⾏这个地址(在浏览器上访问改地址),该项⽬就会发起⼀次构建项⽬,即拉取代码打包部署操作,
  在实际中,是由git服务器回调改地址,在后⾯讲git服务器配置时详细讲解,
  值得注意的是,如果你是学习测试,使⽤的是GitHub服务,要确保你的回调地址已经试外⽹映射过的,即往外⽹可以访问
  5.构建环境(⽆需配置)
  6.构建
  7.构建后操作
  构建后操作的意思是,jar打包好后,要将jar发送到哪⾥去,发送后去和启动等
  这⾥需要提前在需要部署的服务器上配置好路径,写好启动和停⽌项⽬的脚本,并设置为可以执⾏的脚本,
  其实就是我们平时在Linux上⼿动部署项⽬操作的脚本
  案例中给出的stop.sh脚本如下:
1 #!/bin/bash
2 echo "Stop Procedure : demo2-0.0.1-SNAPSHOT.jar"
3 pid=`ps -ef |grep java|grep demo2-0.0.1-SNAPSHOT.jar|awk '{print $2}'`
4 echo 'old Procedure pid:'$pid
5 if [ -n "$pid" ]
6 then
7 kill -9 $pid
8 fi
  案例中给出的start.sh脚本如下:
1 #!/bin/bash
2 export JAVA_HOME=/usr/java/jdk1.8.0_131
3 echo ${JAVA_HOME}
4 echo 'Start the program : demo2-0.0.1-SNAPSHOT.jar'
5 chmod 777 /home/ldp/app/demo2-0.0.1-SNAPSHOT.jar
6 echo '-------Starting-------'
7 cd /home/ldp/app/
8 nohup ${JAVA_HOME}/bin/java -jar demo2-0.0.1-SNAPSHOT.jar &
9 echo 'start success'
  到此,Jenkinds服务器配置完成,接下来我还有要配置Linux服务器和Git服务器。
3.2.Linux服务器配置
  在Liux服务上,上传上⽂中的两个脚本,⽤于启动和停⽌
3.3.GitHub服务器配置
maven下载教程  在GitHub服务器上的指定项⽬⾥⾯配置上⽂中提到的回调地址
  特别注意:为了保证回调地址⽹可以使⽤,
  所以,下⾯配置的是外⽹映射地址。
  到这⾥所有配置搞定,只需修改代码,提交到git,然后访问程序看是否⽣效。 4.测试
  1.测试代码
  2.提交代码到git,触发构建
  3.在GitHub服务器上去看,是否已经触发
  4.在Jenkins的控制台查看是否,正在构建
  从下图中可以看出,正在构建
  5.查看当次构建的控制台⽇志
  说明已经启动成功
  6.查看Linux服务器,是否上传代码
  7.在Linux上使⽤命令jps,查看是否启动
  8.浏览器上访问,看是否能⽤
  说明,已经正常启动可以使⽤。
  9.再次确认是否能⾃动化部署
  修改代码,重新提交代码,循环1到8步查看。
  如果测试结果是你预期的,那么⾃动化部署成功。
5.总结&资料下载
5.1.总结
  ⾃动化部署Jenkins,作为⼀款⼯具,有着⾮常强⼤的功能,
  上⾯我们只是讲了⽣产上做Java⾃动化部署的⼀个主要流程,
  但是,本着学习是为了解决⽣产的原则,
  个⼈建议,⽤到Jenkins的什么功能就学什么就可以了,
  没必要把Jenkins的所有功能都学完在使⽤,
  就如同我们使⽤word⽂档⼀样,并没有系统的他word⽂档学完后,在开始使⽤,⽽是⽤到什么功能就学习什么功能!
5.2.相关资料
  3.博客配套视频:

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。