Jenkins的简单使用【图文并茂】

Jenkins的介绍

      官方版:Jenkins是一个开源的、提供友好操作界面的持续集成(CI)工具,起源于Hudson(Hudson是商用的),主要用于持续、自动的构建/测试软件项目、监控外部任务的运行(这个比较抽象,暂且写上,不做解释)。Jenkins用Java语言编写,可在Tomcat等流行的servlet容器中运行,也可独立运行。通常与版本管理工具(SCM)、构建工具结合使用。常用的版本控制工具有SVN、GIT,构建工具有Maven、Ant、Gradle。

     作者版:写完代码提交到仓库就自动部署。

需求

在window上写SpringBoot项目,写完代码后pull到github上可以自动打包并且运行jar

注意

仓库使用Github,仓库使用Github,仓库使用Github,如果使用Gitee,那么webhook那个地方会有个坑,注意一下

前提

Linux(能连外网)+JDK8 + Git+Github+Maven会配置并且使用

Linux安装Maven

安装Maven:linux安装maven简易步骤 - 简书

配置Maven中央镜像:Maven中本地仓库,中央镜像,JDK版本配置_CBeann的博客-CSDN博客

1)其中配置远程镜像仓库的setting.xml在 apache-maven-3.6.3/conf 目录下

2)注意自己的目录问题

Linux安装git

yum -y install git
git --version

基本功能模块

文件目录结构

博客肯定有自己的目录,但是我在这里写的不是废话,有助于阅读全文

1)Linux安装Jenkins:Linux怎么安装Jenkins(比如下载Maven并且配置了Maven的环境的变量)

2)Jenkins全局配置:设置Jenkins的一些全局属性(比较安装好Maven后你要设置仓库镜像地址、本地仓库地址等

3)在IDEA中创建Boot项目并且传到github:就是简单的创建项目并且上传打github

4)创建Jenkins任务关联项目:核心操作

   4.1)源码管理:关联github,自动部署要有仓库吧,这个地方设置仓库URL和其他验证信息。

   4.2)构建触发器:触发构建的前提条件,就是满足什么条件才能触发构建条件,此处是访问某个 URL  时就触发了构建模块。

   4.3)构建:核心逻辑,此处就是把仓库里的代码 clean install

   4.4)构建后操作:当构建完毕后执行的操作,此处就是 构建的结果是xx.jar  , 构建后操作就是执行jar呗

   4.5)手动构建:测试一下构建是什么操作,其实就是手动触发构建,只有手动正确了自动才放心。

5)配置github的webhooks:关联jenkins触发器,当github仓库有pull请求时候就触发构建触发器,从而执行构建操作

Linux安装Jenkins

下载最新的 jenkins.war (http://mirrors.jenkins.io/war-stable/latest/jenkins.war) 

把war包放在tomcat服务器里

在浏览器输入 http://39.105.30.146:8080/jenkins/

然后跳转到如下页面,其中密码在图中已经告诉你位置

cat /root/.jenkins/secrets/initialAdminPassword

输入密码后点击右下角的继续

下一步 

全部安装成功以后,很久以后。。。如下图所示,选择admin用户,密码为上面的密码

如下图所示

安装成功后如图所示

Jenkins全局配置

主页面

全局安全配置Configure Global Security

全局工具配置Global Tool Configuration

在IDEA中创建Boot项目并且传到github

这个没啥好说的,就是一个SpringBoot项目

创建Jenkins任务关联项目

主页面

源码管理:关联github

构建触发器:触发构建的前提条件

目的

当访问(http://39.105.30.146:8080/job/jkdemo/build?token=jkdemo123)时,会构建触发器去构建项目

配置

格式:JENKINS_URL/              job/jkdemo/build?token=TOKEN_NAME
===>>>
实例:http://39.105.30.146:8080/job/jkdemo/build?token=jkdemo123

构建:核心逻辑

构建后操作:当构建完毕后执行的操作,执行shell脚本

注意:下图可能没有Post build task 选项 ,需要安装插件 Post Build task,安装插件方式在遇到的问题中

 脚本的内容大致为:把xxx.jar包从仓库复制到某个地方,然后获取正在运行的xxx.jar的进程ID,然后关闭,在运行java -jar xxx.jar

脚本需要修改,不能直接用

#!/bin/bash
cp /root/.m2/repository/com/example/jkdemo/0.0.1-SNAPSHOT/jkdemo-0.0.1-SNAPSHOT.jar  /opt/cbeann/jkdemo-0.0.1-SNAPSHOT.jar
your_name=$(ps -ef | grep jkdemo-0.0.1-SNAPSHOT.jar | grep -v grep)
#echo ${your_name}

array=(${your_name// / })  
 
 

process_id=${array[1]}  ##获得进程ID

kill -9 ${process_id}

java -jar /opt/cbeann/jkdemo-0.0.1-SNAPSHOT.jar &

手动构建:测试一下构建是什么操作

点击左边的   立即构建,就会出现 左下角的 进度条

进度条完毕后会出现工作区,里面放着源代码

配置github的webhooks:关联jenkins触发器

遇到的问题

1)新版Jenkins禁用CSRF

修改tomcat-8.5.55\bin\catalina.sh

JAVA_OPTS="-Dhudson.security.csrf.GlobalCrumbIssuerConfiguration.DISABLE_CSRF_PROTECTION=true"

2)jenkins安装插件

以安装插件 Post Build task 为例

参考

Jenkins详细教程 :  Jenkins详细教程 - 简书

linux tomcat7设置jvm启动参数:  https://blog.csdn.net/chtnj/article/details/47320251

视频:  尚硅谷Jenkins视频教程(从安装部署到环境搭建)_哔哩哔哩_bilibili

jenkins 构建后 执行shell命令:  jenkins 构建后 执行shell命令_那一年漫天雪的博客-CSDN博客_jenkins 构建后执行shell

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

CBeann

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值