zoukankan      html  css  js  c++  java
  • jenkins maven Spring Boot git Linux(转)

    最近工作需要使用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


    五、安装git plugin插件(用于从git拉取最新的代码)和publish over ssh插件(用于上传打包好的项目到远程Linux)。进入系统管理--管理插件--可选插件,在搜索框里面输入git plugin 和publish over ssh,然后点击安装即可。安装好以后可以在“已安装”选项里面看看是否安装成功。


    六、重启tomcat来重启jenkins,让上面两个插件生效。到此jenkins安装完毕,下面开始第二部分--使用教程。


    第二部分:使用教程

      其实使用教程也可以分为两步,第一步:jenkins从git master分支抓取最新代码自动构建打包;第二步:将打包好的jar包上传到Linux远程端,关闭正在运行的项目,然后运行新的jar项目。

    第一步:

    一、打开jenkins首页,点击新建项目


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


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


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


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


    解决上述ssh key问题,可参考以下教程链接

    http://www.linuxidc.com/Linux/2014-10/108080.htm

    六、点击保存,至此已经可以实现jenkins从git抓取最新的master分支代码。点击立即构建。

      点击consoleoutput可看控制台输出信息。如果在这步还报下图错误,这是因为在know_hosts中没有访问git机器的记录。


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


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


    八、至此已完成本教程的第二部分的第一步曲,jenkins从git抓取最新项目然后自动构建打包的过程。从控制台信息中可看出jenkins已经将打好的jar包放在了/root/.jenkins/workspace/..工作空间中。如果你看到了这个图,证明前面的配置都是正确的,可以接着往下走。


    第二步:

    一、打开jenkins首页,点击系统管理--系统设置,下拉找到找到publish over ssh,进行以下设置(请确保前面的步骤中publish over ssh插件已经安装成功,如果没有发现,那就是还没有安装成功,请返回去安装)。


    注:Remote Directory是ssh直连的地址,可以配置每个项目的单独脚本来操作其他····。

    细心的童鞋可能在这里可能会发现服务器的IP与jenkins安装的IP是一样的,也就是说都是都在同一台机器上,都是192.168.0.101,这是因为刚好只有这台Linux机器比较方便使用,所以就只用这一台机器做实验了。实际上jenkins安装在Windows上或者Linux上,然后项目部署到另外一台Linux,这样都是可以的,也推荐这么干,只要这里的IP换成部署项目的机器IP就可以了

    二、进入上面的已经创建好的jenkinsWeb项目,点击配置,下拉找到Post Steps进行配置。

    1、点击


    如果没找到这项,证明publish over ssh没有安装成功。

    2、接着进行下图配置


    参数说明:

    Transfer SetSource files:表示要上传的本地的jar包及路径,可到工作空间去看。

    Remove prefix:表示要上传时要去除的文件夹,即只上传jar包。

    remote driectory:即表示执行时的路径,相当于把jar包上传到这里了。

    exec commad:要执行的命令脚本。

    脚本内容:


    将此脚本放于上面的Exec commad路径中。

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


    这里请务必注意第一行,必须制定JAVA_HOME的位置,否则jenkins会报找不到jre的错误。

    三、至此,第二步已经配置完毕,点击保存。点击立即构建,点击consoleoutput,就可以看到成功上传jar包到远程Linux并且成功发布项目的信息了。


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


    项目代码修改后,只需将代码提交到git master分支,然后登陆jenkins点击立即构建,则可以轻松的进行项目部署。Jenkins亦可进行定时构建部署,当然也可设置当master代码有更新时自动拉取代码进行构建部署,这里就不继续说了。

    jenkins下载链接:http://pan.baidu.com/s/1jIx3FcM

    教程到此结束,欢迎留言讨论。欢迎转载,转载请务必注明出处。

    原文地址

  • 相关阅读:
    Netty与Spring Boot的整合
    Activiti 5.22.0 之自由驳回任务实现(亲测)
    学习机器学习前你应该要知道的一些事
    机器学习中调参的基本思想
    机器学习和深度学习区别的简要概述
    SKlearn中分类决策树的重要参数详解
    世界第二大软件国家如何看待人工智能、机器学习和大数据
    sklearn中的数据预处理和特征工程
    人工智能革命:人类永生还是灭亡(下)
    人工智能革命:人类永生还是灭亡(中)
  • 原文地址:https://www.cnblogs.com/yang218/p/7144546.html
Copyright © 2011-2022 走看看