1.为什们要使用jenkins

Jenkins是基于Java开发的一种持续集成工具,用于监控持续重复的工作,功能包括:

1、持续的软件版本发布/测试项目;

2、监控外部调用执行的工作。

2.安装jenkins前的准备工作
项目 描述
系统环境 centos6.8
内存 4G
JDK jdk1.7+
容器 tomcat7
版本 jenkins-1.651.3

下载地址:http://ftp.yz.yamagata-u.ac.jp/pub/misc/jenkins/war-stable/1.651.3/jenkins.war

3.安装与运行

1.Jenkins本身由JAVA语言开发的web应用程序,通过war包发布,所以最便捷的方式就是通过war进行安装(严格来说不算安装,说部署更合适)。

2.当然Jenkins也提供了针对不同平台的安装包,如windows的安装文件、ubuntu的安装包等等,但不建议使用定制的安装程序进行安装,最直接的理由就是学习成本比较高和可控性不好,所以本文将介绍如何使用war包安装、运行。

3.使用war包安装

Jenkins可以直接使用java -jar jenkins.war来运行,需要配置java黄精变量 命令要在jenkins.war所在路径下执行,否则要加上jenkins.war所在目录的相对或绝对路径。

注意:前文提到Jenkins的运行需要依赖jdk和web容器,这里怎么又说可以直接运行呢?这是个好问题,产生这种神奇现象的奥秘在于Jenkins内置了Jetty容器.

4.使用Tomcat安装

首先从Tomcat官方网站或其他渠道下载Tomcat,本文用的版本是7.0.63绿色版,下载地址为:apache-tomcat-7.0.63。

解压Tomcat安装包,配置环境变量,启动tomcat就可以了。

4.配置

列出的配置为“系统管理(Manage Jenkins)>系统设置(Configure System)”中的内容,与特定的插件相关内容将在插件使用中说明。

1.主目录(Home directory)

Jenkins存放数据的目录,如:Jenkins自身的配置文件、默认的工作空间(之所以说是默认工作空间是因为Job的工作空间在Job设置中可以特别指定,与默认工作空间可以不同)。默认主目录为${user_home}/.jenkins,在Jenkins启动前可以通过设置修改,设置途径如下:

设置系统环境变量JENKINS_HOME,如:JENKINS_HOME=/root/.jenkins,

在WEB容器启动前设置应用级的环境变量JENKINS_HOME

这种方式是我在实际使用中推荐的一种方式,在同一台机器上部署多个需要不同配 置的应用时很灵活,通常我会为每个应用提供一个env.sh文件,可能的内容如下:

JAVA_HOME=/usr/java/jdk1.6.0_14/
PATH=$JAVA_HOME/bin:$PATH
export JAVA_HOME PATH
##Jenkins
JENKINS_HOME=/root/.jenkins
export JENKINS_HOME
## for linux
LANG=zh.UTF-8
export LANG

Resin

编写resin的启动脚本,脚本比较简单主要作用理设置环境变量,调用resin提供的启动命令启动resin,内容如下:

#!/bin/sh
##应用所在目录
cd /data/xxx_adcenter
. ./env.sh
sh $RESIN_HOME/bin/resin.sh $1

Tomcat

修改jenkins.war中的web.xml文件,设置HUDSON_HOME,内容如下:

<env-entry>
<env-entry-name>HUDSON_HOME</env-entry-name>
<env-entry-type>java.lang.String</env-entry-type>
<env-entry-value>/data/jenkins</env-entry-value>
</env-entry>

2.工作空间根目录(Workspace Root Directory)

Job的工作空间,可使用的环境变量有:

JENKINS_HOME、ITEM_ROOTDIR、ITEM_FULLNAME

默认值在不同版本的Jenkins中可能不同,如:

Jenkins-1.585中为${JENKINS_HOME}/workspace/${ITEM_FULLNAME}

Jenkins-1.653中为${ITEM_ROOTDIR}/workspace

ITEM_ROOTDIR:代表${JENKINS_HOME}/jobs/${ITEM_FULLNAME}/ ITEM_FULLNAME:job名字

3.构建记录根目录(Build Record Root Directory)

可使用的变量如“工作空间根目录”,默认值为${ITEM_ROOTDIR}/builds。

4.用法(Usage)

控制如何在节点上安装构建,从节点(slave)上也有这个设置,包含两个选项:

尽可能的使用这个节点(Utilize this node as much as possible):

这是默认设置,在这种模式下,当有一个可以在这个节点上运行的构建时,Jenkins将使用这个节点进行构建。在实际使用中建议将主节点(master)设置为这种模式,从节点设置为“只允许运行绑定到这个节点的JOB运行”,这样可以避免从节点出现故障时导致的Job无法运行的情况发生。

只允许运行绑定到这个节点的JOB(Only build jobs with label restrictions matching this node):

在这个模式下,Jenkins只运行指定在此节点运行的Job。在Job设置的“Restrict where this project can be run”中指定可运行Job的节点,关于如何指定节点的高级特性在Job设置中介绍。

1.jenkins持续集成-jenkins安装的更多相关文章

  1. Jenkins持续集成_01_Mac安装配置

    前言 Jenkins是一款开源 CI&CD 软件,用于自动化各种任务,包括构建.测试和部署软件.在自动化测试中,用来持续集成,跑定时任务进行定时自动化监测.更详细介绍可查看jenkins官网: ...

  2. centos下搭建Jenkins持续集成环境(安装jenkins)

    1.安装JDK yum install -y java 2.安装jenkins 添加Jenkins库到yum库,Jenkins将从这里下载安装. 1 wget -O /etc/yum.repos.d/ ...

  3. Jenkins持续集成企业实战系列之Jenkins持续集成简介及安装-----02

    1.      Jenkins持续集成简介 注:原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.    最初接触Jenkins也是由于公司需求, ...

  4. [Jenkins]持续集成环境下fingbug插件的安装使用与配置

    参考:https://wiki.jenkins.io/display/JENKINS/FindBugs+Plugin 突然,天降杂事.我是想安安静静的做个美丽的测试...但是事与愿违,项目经理叫我帮忙 ...

  5. Jenkins持续集成(上)-Windows下安装Jenkins

    环境:Windows 2008 R2.Jenkins2.235.1: 概要 前面写过一篇文章,<自动发布-asp.net自动发布.IIS站点自动发布(集成SLB.配置管理.Jenkins)> ...

  6. python_java_selenium_ jenkins持续集成Firfox_chrome浏览器不显示的解决方法?

    python_java_selenium_ jenkins持续集成Firfox_chrome浏览器不显示的解决方法: 原因:因为jenkins是用windows installer 安装成 windo ...

  7. jenkins持续集成源码管理选项为None,构建失败找不到git.exe解决办法

    我的jenkins版本为Jenkins ver. 2.19.1 1.源码管理选项只有None的解决办法: 在插件管理中心,搜索对应的源码管理插件这里以git为例,搜索git plugin点击右下角的安 ...

  8. 【转】jenkins持续集成配置

    搭建jenkins持续集成服务器 1.jenkins简介 Jenkins,前身为Hudson,是基于Java开发的一种持续集成工具,用于监控持续重复的工作,包括: 持续的软件版本发布/测试项目. 监控 ...

  9. Jenkins持续集成

    Jenkins持续集成 & .NET   最近受累于测试环境每次发布都很麻烦,而且我们有多个测试环境,因此专门抽时间做了Jenkins的配置和研究. 折腾了两天终于绿灯以后,先来个截图,Blu ...

随机推荐

  1. 通过Nginx+tomcat+redis实现反向代理 、负载均衡及session同步

    一直对于负载均衡比较陌生,今天尝试着去了解了一下,并做了一个小的实验,对于这个概念有一些认识,在此做一个简单的总结 什么是负载均衡 负载均衡,英文 名称为Load Balance,指由多台服务器以对称 ...

  2. IntelliJ IDEA 自动化工具安装并添加自动化测试框架

    IntelliJ IDEA是一个用于开发人员开发和测试人员自动化测试的测试工具,类似于eclipse. 优点:插件多自身可以携带,自身携带cucumber自动化测试框架,类似于junit一样 缺点:r ...

  3. C语言中extern的用法

    0x01 extern用在变量或函数的声明前,用来说明“此变量/函数是在别处定义的,要在此处引用”. 0x02 extern修饰变量的声明. 举例:若a.c中需引用b.c中的变量int v,可以在a. ...

  4. 数据库的NULL值讨论

    有许多关于数据库设计中NULL的讨论,我个人的设计习惯是,不使用NULL值. 我所设计所有表都是Not Null的字段的,尤其是我主要做数据仓库的表设计.刚开始使用数据库时,就栽了一次.一个Group ...

  5. 学习计划-----java初级工程师

    目标: 1.具备扎实的JAVA基础,对数据结构.基本算法熟练掌握,并具备基本的算法设计能力. 2.前台:精通JSP/Servlet.HTML.JavaScript.Ajax.Jquery, XML.J ...

  6. thinkPHP--SQL查询

    一.查询方式 ThinkPHP 提供了三种基本的查询方式:字符串条件查询.索引数组条件查询和对象条件查询. 在大多数情况下,推荐使用索引数组和对象方式作为查询条件,因为会更加安全 1.使用字符串作为条 ...

  7. 高可用Hadoop平台-Flume NG实战图解篇

    1.概述 今天补充一篇关于Flume的博客,前面在讲解高可用的Hadoop平台的时候遗漏了这篇,本篇博客为大家讲述以下内容: Flume NG简述 单点Flume NG搭建.运行 高可用Flume N ...

  8. C语言中两种方式表示时间日期值time_t和struct tm类型的相互转换

    使用gmtime函数或localtime函数将time_t类型的时间日期转换为structtm类型: 使用time函数返回的是一个long值,该值对用户的意义不大,一般不能根据其值确定具体的年.月.日 ...

  9. delphi 类方法、类变量、类常量、类属性的研究,自己的研究

    群里我师傅给我的答案: unit Unit4; interface uses Winapi.Windows, Winapi.Messages, System.SysUtils, System.Vari ...

  10. PV IP UV的概念介绍

    IP(独立IP):指独立IP数,不同的IP地址的计算机访问网站的总次数,这个是网站流量分析的一个重要指标.00:00-24:00内相同的IP地址只被计算一次 假如说:赶集网的日独立IP300W,则至少 ...