Jenkins概述:

Jenkins是一个开源的、提供友好操作界面的持续集成(CI)工具,起源于Hudson(Hudson是商用的)。主要用于持续、自动的构建/测试软件项目、监控外部任务的运行。其主体框架采用 java开发,实质内部功能都是由各种插件实现,极大提高了扩展性,Jenkins用Java语言编写,可在Tomcat等流行的servlet容器中运行,也可独立运行。

注:Hudson是SUN公司时期就有的CI工具,后来因为ORACLE收购SUN之后的商标之争,创始人KK搞了新的分支叫Jenkins 。今天的Hudson还在由ORACLE持续维护,但风头已经远不如社区Jenkins。

Jenkins钉钉通知:

jenkinsn 优化 jenkins csdn_jenkinsn 优化


jenkinsn 优化 jenkins csdn_Windows_02

构建流程

jenkinsn 优化 jenkins csdn_Jenkins_03


jenkinsn 优化 jenkins csdn_Windows_04

持续集成要点:

  • 统一的代码库(git)
  • 统一的依赖包管理(nexus)
  • 测试自动化
  • 构建全自动化(maven)
  • 部署自动化
  • 可追踪的集成记录

下载安装jenkins

下载地址:https://www.jenkins.io/download/(推荐直接下载war包)
LTS = Long Term Support 长时间支持版本(三年) ,一般的版本支持为18个月。

jenkinsn 优化 jenkins csdn_Windows_05


下载完成之后可以直接放到Tomcat下面直接运行,也可以用下面的方式运行。(war包)

jenkinsn 优化 jenkins csdn_服务器_06


附:

如果碰到

Please wait while Jenkins is getting ready to work …

jenkinsn 优化 jenkins csdn_jenkinsn 优化_07


解决方法:

找到hudson.model.UpdateCenter.xml文件

jenkinsn 优化 jenkins csdn_服务器_08


去掉 https 中的 s ,然后重启tomcat服务。运行完成直接访问localhost:8080。

jenkinsn 优化 jenkins csdn_Jenkins_09


密码可以从路径找,也可以从控制台找。

jenkinsn 优化 jenkins csdn_jenkinsn 优化_10


jenkinsn 优化 jenkins csdn_Jenkins_11


这里选择安装推荐的插件,安装时间比较慢,耐心等待,安装完成之后就可以使用了。

jenkinsn 优化 jenkins csdn_jenkens_12


插件下载

常用的插件有

插件名称

插件描述

插件名称

插件描述

Maven Integration

maven 管理插件

Deploy to container

容器部署插件

Pipeline

管道集成插件

Email Extension

邮件通知插件

SSH

用于ssh 通信

在安装插件过程中太慢的话,更换一下镜像源

jenkinsn 优化 jenkins csdn_Windows_13


把:http://updates.jenkins-ci.org/update-center.json

换成:http://mirror.esuni.jp/jenkins/updates/update-center.json

镜像源查询:http://mirrors.jenkins-ci.org/status.html项目部署

1、系统环境配置

jenkinsn 优化 jenkins csdn_jenkinsn 优化_14


此次部署使用的是Gitlab代码管理工具,URL例如(http://127.0.0.1即可)

jenkinsn 优化 jenkins csdn_Jenkins_15

2、全局工具环境配置:

jenkinsn 优化 jenkins csdn_jenkens_16


(1)配置jdk,路径为jenkins所在服务器。

jenkinsn 优化 jenkins csdn_jenkinsn 优化_17


(2)配置Git、Gradle,路径为jenkins所在服务器。

jenkinsn 优化 jenkins csdn_Jenkins_18


3、构建项目(1)点击新建Item选项,根据实际情况自行选择。

jenkinsn 优化 jenkins csdn_jenkinsn 优化_19


(2)在这可添加构建参数

jenkinsn 优化 jenkins csdn_服务器_20


(3)对自己项目的拉取路径,项目代码所在位置

jenkinsn 优化 jenkins csdn_jenkens_21


(4)在这可添加定时操作,让jenkins到时间自己构建,我定的是每天晚上11时

jenkinsn 优化 jenkins csdn_jenkens_22

(5)此步比较关键,可重复增加,如果在Linux环境下,选择Execute shell,写shell脚本,此次选择Execute Windows batch command,书写windows批处理,详细访问

jenkinsn 优化 jenkins csdn_jenkens_23


(6)引入 invoke Gradle script,此项目是用gradle构建的,因项目而定,自行选择。

jenkinsn 优化 jenkins csdn_jenkinsn 优化_24


(7)程序构建之后,发布到Tomcat服务器中

jenkinsn 优化 jenkins csdn_服务器_25


附:如果Tomcat没有权限,可以修改tomcat-users.xml。

<role rolename="manager"/>  
<role rolename="manager-gui"/>  
<role rolename="admin"/>  
<role rolename="admin-gui"/>  
<role rolename="manager-script"/>  
<role rolename="manager-jmx"/>  
<role rolename="manager-status"/>  
<user username="Tomcat" password="Tomcat" roles="admin-gui,admin,manager-gui,manager,manager-script,manager-jmx,manager-status"/>

(8)Jenkins构建时产生的缓存会存储到工作空间,清理掉缓存

  • 可以手动清理工作空间

jenkinsn 优化 jenkins csdn_jenkinsn 优化_26

  • 每次手动清理比较麻烦,我们可以配置Jenkins在每次构建完成之后就进行清理

jenkinsn 优化 jenkins csdn_Windows_27

附:远程服务器

jenkins 安装在服务器上,就按照上面步骤操作即可,如果jenkins安装在自己的电脑上,想对服务器的Tomcat进行一些的操作,可以参考以下方法,如使用以下步骤,将步骤5替换即可:

(1)Publish Over SSH插件安装并配置服务器

  • 在插件管理中直接安装一下插件即可(此插件可能比较老了,没有人更新)
  • 在系统管理中配置要连接的服务器

(2)构建任务流程

  • 安装好插件后,会增加以下界面,选择第一步配置好的服务器SSH Server,SSH大家都知道是连接Linux 的,而咱们的系统是Windows,所以我想到的就是在Windows上安装SSH工具,我用的插件是freeSSHd,大家可以在去搜一搜,让这个插件能连接到windows的服务器,在通过命令启动已经写好的批处理文件,就能达到想要的目的。

附:用户注册

jenkinsn 优化 jenkins csdn_Windows_28

Delegate to servlet container
如果你的Jenkins运行在像Tomcat和GlassFish等服务器上,这些服务器本身就有安装控制,选择这种安全策略,就可以非常简单地让服务器接管Jenkins的安全控制问题。
Jenkins’s own user database
Jenkins本身有个数据库来管理用户,不过这个数据库的容量比较小,当有大量用户时,这种策略就不合适。在这种策略下,如果允许任何人通过注册的形式Jenkins的话,可以勾上"Allow user to sign up"。这样非用户在进入Jenkins界面后,可以通过点击右上角的”sign up“先注册,然后再登陆使用Jenkins。如果不允许他人随便注册和使用该Jenkins,就要取消"Allow user to sign up"复选框