Jenkins 是一个可扩展的持续集成引擎,可以为我们提供代码自动编译、打包和发布工作,减少部署成本。

一、安装与启动

  Jenkins 提供了多种便捷的安装方式,比较推荐使用执行 war 包的方式。

1、基本资料

  官网地址:https://jenkins.io/

  下载地址:https://jenkins.io/download/

  中文文档:https://www.w3cschool.cn/jenkins/

2、基于 war 启动

  该方法无需安装,直接官网下载 jenkins.war 到本地。执行命令“java -jar jenkins.war”命令即可启动 jenkins 服务,启动默认端口为8080。若想指定使用端口,使用命令“ java -jar jenkins.war --ajp13Port=-1 --httpPort=9999”,则启动后使用端口为9999。

3、安装 rpm 版本

  1) 下载 rpm 安装包:http://pkg.jenkins-ci.org/redhat/

  2) 安装命令:rpm -ivh jenkins-2.121-1.1.noarch.rpm

      安装文件及目录说明:

      /usr/lib/jenkins/jenkins.war   ---安装 war 包

      /etc/sysconfig/jenkins   ---配置文件一

         /etc/init.d/jenkins   ---配置文件二

      /var/lib/jenkins/   ---JENKINS_HOME目录

      /var/log/jenkins/jenkins.log   ---日志文件

      /var/cache/jenkins   ---缓存文件?

  3) 修改配置

    ① 增加 jdk 配置,命令:vi /etc/init.d/jenkins,增加 jdk 执行文件路径,如:/usr/java/jdk1.7.0_79/bin/java

    ② 修改启动端口,命令:vi /etc/sysconfig/jenkins,修改端口 JENKINS_PORT

  4) 启动

    ① service jenkins start   ---启动服务

    ② service jenkins stop   ---停止服务

    ③ service jenkins restart   ---重新启动服务

二、插件安装与全局配置

1、插件安装

  打开管理地址(如:http://localhost:9999),配置管理员账号密码后,进入“系统管理->插件管理”,先安装常用插件:

  1) 安装 Maven 插件,检索关键字:Maven Integration plugin

  2) 安装 Git 插件,检索关键字:Git

  3) 安装 Subversion 插件,检索关键字:Subversion

  备注:如果可选插件无法联网,尝试修改“jenkins->插件->高级”,底部升级站点改:http://updates.jenkins-ci.org/update-center.json,再尝试。

2、全局配置

  打开“系统管理->全局工具配置”,配置好常用的全局环境变量:

  1) JDK,配置 JAVA_HOME 为 jdk 的目录地址,如:/usr/local/jdk

  2) Git,配置 Path to Git executable 为 git 的可执行文件地址,如:/usr/bin/git

  3) Maven,配置 Maven_HOME 为 maven 的安装目录,如:/usr/share/maven

三、配置任务

  点击“新建任务”,选择“构建一个maven项目”(如果没有此菜单请先安装 Maven 插件),任务配置项说明:

1、源码管理选择 Git 或 Subversion

   配置好 Repository URL 和 账号密码即可。

2、构建触发器

  1) 触发远程构建

   填写身份令牌后,可以通过访问地址“JENKINS_URL/job/imp-auto-deploy/build?token=TOKEN_NAME”执行任务。默认是需要登录后才能访问此 url ,如果想要非登录态任意访问 url 执行任务,则需要配置特殊的 TOKEN_NAME(点击右上角账户,进度“设置”菜单,展开“API Token”,选择“API Token”)。 

  2) 定时构建

     配置语法:MINUTE HOUR DAY MONTH WEEK

       ▶ MINUTE 分钟,取值范围:0~59

       ▶ HOUR 小时,取值范围:0~23

       ▶ DAY 天,取值范围:1~31

       ▶ MONTH 月,取值范围:1~12

     特殊字符:

       ▶ * 匹配范围内所有值

       ▶ M-N 匹配 M~N 范围内的所有值

       ▶ M-N/X 或 */X 在指定 M~N 范围内或整个有效区间内每间隔 X 构建一次

       ▶ A,B,...,Z 匹配多个指定值 

     例子:

       ▶  H/15 * * * *   # 每隔15分钟。(或许:07, :22, :37, :52)

       ▶  H(0-29)/10 * * * * # 每前半小时中每隔10分钟。 (3次, 或许:04, :14, :24)

       ▶  45 9-16/2 * * 1-5    # 每个工作日从早上9点45分开始到下午3点45分结束这段时间内每间隔2小时的45分钟那一刻。

       ▶  H H(9-16)/2 * * 1-5    #每个工作日从早上9点到下午5点这段时间内每间隔2小时之间的某刻。(或许在上午10:38, 下午12:38, 下午2:38 , 下午4:38)

       ▶  H H 1,15 1-11 *   #每月(除了12月)从1号到15号这段时间内某刻。

  3) Build

    Root Pom 填写 pom.xml 文件所在相对目录,如在根目录,则直接填写:pom.xml

    Goals and options 填写 maven 编译参数,推荐填写:clean package

  4) Post Steps

    选择“Run only if build succeeds”,可以在 shell 中编写发布成功后执行的 shell 脚本。   

四、发送邮件

  参考:https://blog.csdn.net/hlybest24/article/details/60753538

持续集成工具-Jenkins 使用介绍的更多相关文章

  1. 持续集成工具Jenkins安装、部署、使用

    本文介绍jenkins,利用其做项目发布与持续集成交付工具. 一.Jenkins是什么? Jenkins是基于Java开发的一种持续集成工具,用于监控持续重复的工作,功能包括: 1.持续的软件版本发布 ...

  2. 轻松搭建持续集成工具jenkins

    1.Jenkins介绍1)什么是持续集成随着软件开发复杂度的不断提高,团队开发成员间如何更好地协同工作以确保软件开发的质量已经慢慢成为开发过程中不可回避的问题.尤其是近些年来,敏捷(Agile) 在软 ...

  3. 持续集成工具Jenkins学习总结

    概述 持续集成(Continuous Integration,简称CI)是一种软件开发实践,团队开发人员每次都通过自动化的构建(编译.发布.自动化测试)来验证,从而尽早的发现集成错误.持续集成最大的优 ...

  4. 持续集成工具jenkins的使用

    jenkins类似于Hadson,是一款持续集成工具.使用jenkins完成自动化部署的表现为:当开发人员向版本库提交新的代码后,应用服务器上自动部署,用户或测试人员使用的马上就是最新的应用程序.搭建 ...

  5. 持续集成工具——Jenkins

    一.jenkins简介 1.持续集成工具 2.基于JAVA环境 二.环境搭建 1.安装JDK 2.安装配置git 3.安装配置tomcat Tomcat是针对Java的一个开源中间件服务器(容器),基 ...

  6. linux-centos下持续集成工具jenkins部署使用教程

    centos下准备工作: 1.安装jdk环境 2.安装maven环境(用于构建项目) 3.git客户端(用于拉取源码) 此外码云还要准备一份java源码(springboot项目) 一.安装jenki ...

  7. 【Gerrit】持续集成工具Jenkins的安装配置与使用过程中遇到的问题整理

    1.下载war包 https://jenkins.io/download/ 2.安装 java -jar jenkins.war Error: Feb 21, 2019 2:17:25 AM wins ...

  8. 持续集成工具之jenkins+sonarqube做代码扫描

    上一篇我们主要聊了下代码质量管理平台sonarqube的安装部署以及它的工作方式做了简单的描述和代码扫描演示:回顾请参考https://www.cnblogs.com/qiuhom-1874/p/13 ...

  9. 【持续集成】jenkins安装部署从git获取代码

    一:持续集成的概念: 1.1:总体的概括 持续集成Continuous Integration 持续交付Continuous Delivery 持续部署Continuous Deployment 1. ...

随机推荐

  1. 【mac环境】终端配色 & 配置使用ll命令

    1.MAC OS X 命令终端的颜色显示 打开 terminal 会发现 ls 和 grep 后的结果是没有色彩的,这时候可以这么干: 用 vim 打开文件 ~/.bash_profile,然后把下边 ...

  2. [leetcode]364. Nested List Weight Sum II嵌套列表加权和II

    Given a nested list of integers, return the sum of all integers in the list weighted by their depth. ...

  3. linux主机名设置

    有时会报错: 代理抛出异常错误: java.net.MalformedURLException: Local host name unknown: java.net.UnknownHostExcept ...

  4. Spring注入静态变量的方法,以及CXF如何获取客户端IP

    1.如果使用@Resource注解来注入静态变量的,服务器启动就会报错的.可以新增一个set方法,同时在set方法上用@Resource注解来注入. 2.或者直接在Spring的配置文件中使用< ...

  5. eclipse中将一个项目作为library导入另一个项目中

    1. github上搜索viewpagerIndicator: https://github.com/JakeWharton/ViewPagerIndicator2. 下载zip包,解压,eclips ...

  6. zabbix3.x自动发现主机

    在服务器比较多的情况下,配置加入群组,添加模板是非常费时费力的,所以利用自动发现主机.自动添加群组和模板是非常好的办法. 两步走 1.配置发现规则 2.配置发现动作 1.前提在服务器是上部署了agen ...

  7. Python程序中的进程操作

    之前我们已经了解了很多进程相关的理论知识,了解进程是什么应该不再困难了,刚刚我们已经了解了,运行中的程序就是一个进程.所有的进程都是通过它的父进程来创建的.因此,运行起来的python程序也是一个进程 ...

  8. sql2012包含数据库,快速生成用户tsql脚本

    今天太忙(下班时,发现一个考试网站的不算BUG的BUG,这个BUG刚好能让我找到想要的数据,现在正辛苦的编码中...) 不多说,今天的技术文章,简单一点,帖一段昨天写的SQL代码 用于SQL2012中 ...

  9. linux就该这么学,第十天了

    今天老师主要让要考试的提前预习课程了,提前预习, 今天讲了,防火墙,iptable.firewall-config,firewall-cmd   防火墙和网卡的配置方法,四种,1配置文件方法,主要开启 ...

  10. KD-树(上)

    来自于https://zhuanlan.zhihu.com/p/23966698 思路篇 导语:kd 树是一种二叉树数据结构,可以用来进行高效的 kNN 计算.kd 树算法偏于复杂,本篇将先介绍以二叉 ...