查看原文
其他

Jenkins+SpringBoot+Maven多模块部署

码农Joe 码咖 2020-01-11

一.安装Jenkins

下载地址https://jenkins.io/download/ ,仅下载war包,将下载好的jenkins.war放进tomcat/webapps目录下,然后启动tomcat。

二.Jenkins配置

启动完之后,访问:http://192.168.14.131:8888/jenkins,这里换成自己的IP和端口,出现下面的界面:

输入密码点击继续后,可能会出现 【该jenkins实例似乎已离线】错误,解决方法如下:

已经离线界面不要动,然后打开一个新的tab,输入网址http://192.168.13.131:8888/jenkins/pluginManager/advanced。这里面最底下有个【升级站点】,把其中的链接改成http的就好了,http://updates.jenkins.io/update-center.json。然后在重启tomcat,刷新刚刚的界面,这样就能正常联网了。

选择安装推荐的插件

创建第一个管理员用户

点击保存并完成,进入实例配置,配置jenkins的访问路径即可

点击保存并完成,Jenkins已就绪

然后会跳转到登陆界面

可能出现的问题:

jenkins初始化配置完后设置了管理员账号密码 网页停留时间长了刷新登录不了了,

解决方法:

找到.jenkins/config.xml文件:(windows环境就是和initialsecretPassword一个目录的那个下面,如果直接使用的安装包进行安装的 则文件存在于安装目录/config/config.xml)(linux操作系统安装的存在于/root/.jenkins/config.xml)

查看这个值:

authorizationStrategy class="hudson.security.FullControlOnceLoggedInAuthorizationStrategy"

这个权限对应“登录用户可以做任何事"。不知道为啥登录不了所以做不了任何事。

替换为 class="hudson.security.AuthorizationStrategy$Unsecured"

这个权限对应“任何用户可以做任何事(没有任何限制)”

登陆后看到系统管理,主要的就是配置 下图右边三个:系统设置、全局工具配置、插件管理

1.配置jenkins所需插件

执行这一步之前,我们在第一次启动jenkins的时候,已经安装过大部分插件,所以我们只需要检查是否安装了以下插件即可

  1. Maven Integration 使我们可以开始一个maven项目作为任务

  2. Git plugin 使我们可以读取存放在git仓库的项目

2.配置jenkins全局工具
  1. 配置jenkins的全局工具主要是我们所使用到的 jdk、git、maven等

JDK、Git、Maven我都没有使用自动安装,全是在linux安装的。

Linux安装Git

大体的安装步骤如下:

①、获取github最新的Git安装包下载链接,进入Linux服务器,执行下载,命令为:wget https://github.com/git/git/archive/v2.17.0.tar.gz ;

②、压缩包解压,命令为:tar -zxvf v2.17.0.tar.gz ;

③、安装编译源码所需依赖,命令为:yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel gcc perl-ExtUtils-MakeMaker 耐心等待安装,出现提示输入y即可;

④、安装依赖时,yum自动安装了Git,需要卸载旧版本Git,命令为:yum remove git 出现提示输入y即可;

⑤、进入解压后的文件夹,命令 cd git-2.17.0 ,然后执行编译,命令为 make prefix=/usr/local/git all 耐心等待编译即可;

⑥、安装Git至/usr/local/git路径,命令为 make prefix=/usr/local/git install ;

⑦、打开环境变量配置文件,命令 vim /etc/profile ,在底部加上Git相关配置信息:

export PATH=/usr/local/git/bin:$PATH

然后保存,退出!

使用source命令立即生效:source /etc/profile

⑧、输入命令 git --version ,查看安装的git版本,校验通过,安装成功。

三、新建任务

新建任务,输入名称,选择maven项目,然后点击确定

创建完任务后,选择配置

源码管理

选择git,然后输入需要下载的github项目地址(这里的项目是私有的),此处填写的自己的项目。出现红色的字,是因为没有填写用户名密码,点击添加,即出现下面的界面。

填写用户名密码:

填写完成后,即为下面的界面。

构建环境

构建环境中勾选“Add timestamps to the Console Output”,代码构建的过程中会将日志打印出来

在Build中输入打包前的mvn命令,如:

配置一个maven风格的项目 然后在配置root pom 指向的是最顶级的pom.xml,

  1. clean install -pl xsjt-comp-manager -am -amd -Pdev -Dmaven.test.skip=true

这样就单独构建xsjt-comp-manager这个jar,相关依赖也会构建好,不用将依赖提前放入maven仓库,更不用搭建私服。

我的项目结构如下:

Post Steps

Post Steps 选择 Run only if build succeeds

遇到的问题:jenkins 构建成功后,Java服务并没有启动

问题的根本在于是Jenkins使用processTreeKiller杀掉了所有子进程,而且这是Jenkins的默认行为。为了解决该问题,我们需要在启动前加上这句

  1. BUILD_ID=DONTKILLME

防止Jenkins 杀死我们的进程。

立即构建

点击立即构建,然后选择Build History里面最新的一个,点击后

点进入可看到左侧有控制台输出,点击后,即可看到日志打印记录

大功告成!

    您可能也对以下帖子感兴趣

    文章有问题?点此查看未经处理的缓存