设为首页 收藏本站
查看: 1444|回复: 0

[经验分享] jenkins maven Spring Boot git Linux(转)

[复制链接]

尚未签到

发表于 2018-1-9 21:03:12 | 显示全部楼层 |阅读模式
  最近工作需要使用jenkins来持续部署Spring Boot项目,在网上爬了很多教程,这方面的教程也不是很多,也掉了很多坑。jenkins要安装起来虽然不难,但也不算太容易。因此萌发了写这篇教程的想法,共享给大家一起进步。
  下面我们开始教程
Jenkins简介
  Jenkins是基于Java开发的一种持续集成工具,用于监控持续重复的工作。简单点来讲就是配置好Jenkins以后可以一键发布项目,包括从git master分支拉取最新的代码,然后打包,然后上传到远程Linux服务器发布等一系列步骤它都可以帮你一键完成。这无疑可以省去很多程序员重复性繁琐的操作。特别是对于现在的spring cloud微服务来说,一个项目由多个小项目组成,每个小项目都独立部署,使用jenkins是最好的部署和管理工具了。
本教程分为两部分,第一部分是安装教程,第二部分是使用教程。
第一部分:安装教程
  环境和所需软件:centos6.5、tomcat8
  前提:请确保你的jdk和maven环境已经安装配置妥当。
  一、下载jenkins.war包,war包可以去官网下载,随后我会附上下载链接,可以避免因为版本带来的各种脑残错误。
  二、将jenkins.war包放到tomcat webapp的目录下,启动tomcat
  三、浏览器访问jenkins。http://192.168.0.101:90/jenkins 。这里我用的是局域网里的Linux,请注意替换成自己的IP,端口号默认是8080,如果没有修改过tomcat则不用更改,我这里是更改过后的端口号。
  四、在jenkins中配置jdk和maven
DSC0000.jpg   五、安装git plugin插件(用于从git拉取最新的代码)和publish over ssh插件(用于上传打包好的项目到远程Linux)。进入系统管理--管理插件--可选插件,在搜索框里面输入git plugin 和publishover ssh,然后点击安装即可。安装好以后可以在“已安装”选项里面看看是否安装成功。
DSC0001.jpg

  六、重启tomcat来重启jenkins,让上面两个插件生效。到此jenkins安装完毕,下面开始第二部分--使用教程。
第二部分:使用教程
  其实使用教程也可以分为两步,第一步:jenkins从git master分支抓取最新代码自动构建打包;第二步:将打包好的jar包上传到Linux远程端,关闭正在运行的项目,然后运行新的jar项目。
  第一步:
  一、打开jenkins首页,点击新建项目
DSC0002.jpg

  二、输入Item名称,选择maven项目,点击ok
DSC0003.jpg

  三、配置git。配置后jenkins可自动从指定的git抓取master分支上最新的代码
DSC0004.jpg

  四、点击add,配置git用户名和密码
DSC0005.jpg

  五、如果出现下图错误,则证明本机没有配置git ssh key
DSC0006.jpg

  解决上述ssh key问题,可参考以下教程链接
  http://www.iyunv.com/Linux/2014-10/108080.htm
  六、点击保存,至此已经可以实现jenkins从git抓取最新的master分支代码。点击立即构建。
  点击consoleoutput可看控制台输出信息。如果在这步还报下图错误,这是因为在know_hosts中没有访问git机器的记录。
DSC0007.jpg

  解决办法:在Linux下git clone访问一次git 所在的机器的项目,如下图。如果你没有出现这个错误,请忽略。
DSC0008.jpg

  再次启动,点击console output可看到成功启动的信息。
DSC0009.jpg

  八、至此已完成本教程的第二部分的第一步曲,jenkins从git抓取最新项目然后自动构建打包的过程。从控制台信息中可看出jenkins已经将打好的jar包放在了/root/.jenkins/workspace/..工作空间中。如果你看到了这个图,证明前面的配置都是正确的,可以接着往下走。
第二步:
  一、打开jenkins首页,点击系统管理--系统设置,下拉找到找到publish over ssh,进行以下设置(请确保前面的步骤中publish over ssh插件已经安装成功,如果没有发现,那就是还没有安装成功,请返回去安装)。
DSC00010.jpg

  注:Remote Directory是ssh直连的地址,可以配置每个项目的单独脚本来操作其他····。
  细心的童鞋可能在这里可能会发现服务器的IP与jenkins安装的IP是一样的,也就是说都是都在同一台机器上,都是192.168.0.101,这是因为刚好只有这台Linux机器比较方便使用,所以就只用这一台机器做实验了。实际上jenkins安装在Windows上或者Linux上,然后项目部署到另外一台Linux,这样都是可以的,也推荐这么干,只要这里的IP换成部署项目的机器IP就可以了
  二、进入上面的已经创建好的jenkinsWeb项目,点击配置,下拉找到Post Steps进行配置。
  1、点击
DSC00011.jpg

  如果没找到这项,证明publish over ssh没有安装成功。
  2、接着进行下图配置
DSC00012.jpg

  参数说明:
  Transfer SetSource files:表示要上传的本地的jar包及路径,可到工作空间去看。
  Remove prefix:表示要上传时要去除的文件夹,即只上传jar包。
  remote driectory:即表示执行时的路径,相当于把jar包上传到这里了。
  exec commad:要执行的命令脚本。
  脚本内容:
DSC00013.jpg

  将此脚本放于上面的Exec commad路径中。
  大概说一下这个脚本的意思,大牛请忽略这段吧。先找到正在运行的jenkins这个项目的ID,然后kill掉这个进程,就可以停掉这个项目了。假如你用的不是springboot项目,则灵活应变,例如tomcat发布的项目可以到tomcat的bin目录下运行shutdown.sh就可以了。然后打开root目录,将jenkins上传好的jar包复制到相应的目录,然后执行bootstrap.sh脚本,我这里的bootstrap.sh脚本是用来启动springboot项目,下面也贴上代码,供大家参考。假如是tomcat,同理到tomcat目录bin目录下执行启动脚本即可。
DSC00014.jpg

  这里请务必注意第一行,必须制定JAVA_HOME的位置,否则jenkins会报找不到jre的错误。
  三、至此,第二步已经配置完毕,点击保存。点击立即构建,点击consoleoutput,就可以看到成功上传jar包到远程Linux并且成功发布项目的信息了。
DSC00015.jpg

  至此已完成所有jenkins配置。浏览器访问刚才发布的项目
DSC00016.jpg

  项目代码修改后,只需将代码提交到git master分支,然后登陆jenkins点击立即构建,则可以轻松的进行项目部署。Jenkins亦可进行定时构建部署,当然也可设置当master代码有更新时自动拉取代码进行构建部署,这里就不继续说了。
  jenkins下载链接:http://pan.baidu.com/s/1jIx3FcM
  教程到此结束,欢迎留言讨论。欢迎转载,转载请务必注明出处。
  原文地址

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-433360-1-1.html 上篇帖子: jenkins环境搭建(Windows) 下篇帖子: jenkins在自动化测试中的应用(Selenium+Python+Jenkins)
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表