持续集成工具-Jenkins 使用介绍
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 使用介绍的更多相关文章
- 持续集成工具Jenkins安装、部署、使用
本文介绍jenkins,利用其做项目发布与持续集成交付工具. 一.Jenkins是什么? Jenkins是基于Java开发的一种持续集成工具,用于监控持续重复的工作,功能包括: 1.持续的软件版本发布 ...
- 轻松搭建持续集成工具jenkins
1.Jenkins介绍1)什么是持续集成随着软件开发复杂度的不断提高,团队开发成员间如何更好地协同工作以确保软件开发的质量已经慢慢成为开发过程中不可回避的问题.尤其是近些年来,敏捷(Agile) 在软 ...
- 持续集成工具Jenkins学习总结
概述 持续集成(Continuous Integration,简称CI)是一种软件开发实践,团队开发人员每次都通过自动化的构建(编译.发布.自动化测试)来验证,从而尽早的发现集成错误.持续集成最大的优 ...
- 持续集成工具jenkins的使用
jenkins类似于Hadson,是一款持续集成工具.使用jenkins完成自动化部署的表现为:当开发人员向版本库提交新的代码后,应用服务器上自动部署,用户或测试人员使用的马上就是最新的应用程序.搭建 ...
- 持续集成工具——Jenkins
一.jenkins简介 1.持续集成工具 2.基于JAVA环境 二.环境搭建 1.安装JDK 2.安装配置git 3.安装配置tomcat Tomcat是针对Java的一个开源中间件服务器(容器),基 ...
- linux-centos下持续集成工具jenkins部署使用教程
centos下准备工作: 1.安装jdk环境 2.安装maven环境(用于构建项目) 3.git客户端(用于拉取源码) 此外码云还要准备一份java源码(springboot项目) 一.安装jenki ...
- 【Gerrit】持续集成工具Jenkins的安装配置与使用过程中遇到的问题整理
1.下载war包 https://jenkins.io/download/ 2.安装 java -jar jenkins.war Error: Feb 21, 2019 2:17:25 AM wins ...
- 持续集成工具之jenkins+sonarqube做代码扫描
上一篇我们主要聊了下代码质量管理平台sonarqube的安装部署以及它的工作方式做了简单的描述和代码扫描演示:回顾请参考https://www.cnblogs.com/qiuhom-1874/p/13 ...
- 【持续集成】jenkins安装部署从git获取代码
一:持续集成的概念: 1.1:总体的概括 持续集成Continuous Integration 持续交付Continuous Delivery 持续部署Continuous Deployment 1. ...
随机推荐
- c#: 界面多语言动态切换简单实现
终于有空整理下多语言实现思路.查阅已有方案,有用不同resx文件的,有每个控件动态设置的,有用反射去整的,颇为繁琐. 结合项目中实现方法,并做简化,实现通用的多语言切换方案,以做备忘. 它支持语言自定 ...
- 拉普拉斯平滑处理 Laplace Smoothing
背景:为什么要做平滑处理? 零概率问题,就是在计算实例的概率时,如果某个量x,在观察样本库(训练集)中没有出现过,会导致整个实例的概率结果是0.在文本分类的问题中,当一个词语没有在训练样本中出现,该词 ...
- c#mysql批量更新的两种方法
总体而言update 更新上传速度还是慢. 1: 简单的insert 速度稍稍比MySqlDataAdapter慢一点 配合dapper 配置文件 <?xml version="1 ...
- 五子棋 AI(AIpha-beta算法)
博弈树 下过五子棋的人都应该知道,越厉害的人,对棋面的预测程度越深.换句话讲,就是当你下完一步棋,我就能在我的脑海里假设把我所有可能下的地方都下一遍,然后考虑我下完之后你又会下在哪里,最后我根据每次预 ...
- HTML5表单_form
原则:能让用户选择的决不填写,增加用户体验 表单(form)元素格式 <input type="text" name="fname" value=&quo ...
- Luogu1613 跑路-倍增+Floyd
Solution 挺有趣的一道题, 仔细想想才想出来 先用$mp[i][j][dis]$ 是否存在一条 $i$ 到 $j$ 的长度为 $2^{dis}$ 的路径. 转移 : ; dis < ba ...
- Effective C++ 笔记:条款 31 将编译关系降至最低
31 : Minimize compilation dependencies between files 1 这关乎C++的类(或说都是类惹的祸) 1.1 C++类定义式的问题 C++类定义式不只叙述 ...
- 单片机之PID算法
说到PID算法,想必大部人并不陌生,PID算法在很多方面都有重要应用,比如电机的速度控制,恒温槽的温度控制,四轴飞行器的平衡控制等等,作为闭环控制系统中的一种重要算法,其优点和可实现性都成为人们的首选 ...
- hdu3001Travelling
参考了别人的代码 https://blog.csdn.net/u010372095/article/details/38474721 深感自己的弱小 这是tsp问题,和基本的tsp问题没什么大的区 ...
- MySQL—函数大全
一.数学函数: #ABS 绝对值函数 ) ; #BIN 返回二进制,OCT()八进制,hex十六进制 ); #ceiling 天花板整数,也就是大于x的整数 select CEILING(-13.5) ...