持续集成工具Jenkins看这篇就够啦!
本文以基于当前最新的
LTS
版本2.164.1
,理论上适应于Jenkins 2.x所有版本。
一、下载
前往Jenkins官网[1] ,按需下载。如用于生产,建议下载Long-term Support (LTS)
版本,这样能够获得相对长期的维护;如想体验最新的功能,可尝试 Weekly
版本。
可以直接下载特定系统专属的版本,也可下载 Generic Java package (.war)
。本文下载的是 Generic Java package (.war)
,这样对所有系统都通用。
二、安装
2.1 通用安装方式
安装Jenkins非常简单,只需准备一个Tomcat(笔者使用的是Tomcat 8),然后将下载下来的 jenkins.war
丢到Tomcat的 webapps
目录中,然后启动Tomcat即可。本文,Tomcat使用的端口是 18080
。
Tomcat下载与安装本文不做赘述,请自行百度。
2.2 Docker安装方式
使用如下命令即可:
docker run -d -v jenkins_home:/var/jenkins_home -p 18080:8080 -p 50000:50000 jenkins/jenkins:lts
2.3 初始化
Jenkins启动片刻后,访问 http://localhost:18080/jenkins
,即可看到类似如下的界面:
由界面提示可知,Jenkins设置了一个初始的管理员密码,该密码存储在 /Users/itmuch.com/.jenkins/secrets/initialAdminPassword
文件中——只需可找到该文件,将其内容复制到图示的输入框中即可。点击 继续
按钮,将会出现类似如下的界面:
按需选择即可,建议初学者选择 安装推荐的插件
,因为该选项包含了Jenkins常用的一些插件,基本满足日常使用;高手则可选择 选择插件来安装
,该选项更具灵活性。这里,笔者以 安装推荐的插件
为例,点击后,将会看到类似如下的界面:
待插件安装完毕后(等待的时间长短视您的网络而定),将会看到类似如下的界面:
Jenkins要求我们创建第一个管理员账户。填入相关信息,并点击 保存并完成
按钮,Jenkins即可初始化完成。
TIPS
安装完成后,如果访问
http://localhost:18080/jenkins
变成白板,而且没有反应,建议重启Jenkins服务器,并重新访问尝试。
三、配置
下面,我们来配置Jenkins。
3.1 全局工具配置
1 点击系统管理
- 全局工具配置
,如下图:
2 将会看到类似如下图的界面。按需添加JDK、Git、Gradle、Maven、Docker等配置。配置比较简单,这里就不赘述了。
3.2 邮件配置
1 点击 系统管理
- 系统设置
2 配置管理员邮件地址:
3 邮件发送配置:
需要注意的是:邮件通知所使用的地址必须与管理员邮箱地址一致,否则将无法正常发送邮件!!
当然,Jenkins还有很多其他的配置选项,读者可自行在Jenkins左侧的系统管理 自行挖掘。
四、使用案例1:构建项目
1 在Jenkins首页,点击开始创建一个新任务.
,如下图所示:
2 创建一个自由风格的项目,如下图所示:
3 点击确定后,将会看到配置详情:
如图,请设置您想构建的项目的Git仓库地址、对应的账号密码、想要构建的Git分支。一般来说,源码库浏览器选择自动即可。
4 Maven配置
其中Maven版本
中所选择的 maven
,就是之前在全局工具配置
一节中的Maven配置名称。
5 如果想设置定时构建(例如:每天晚上八点构建):
6 配置构建完成后操作(以发送邮件为例)
7 点击构建项目,执行构建
五、使用案例2:流水线
Jenkins 2.x
内置了强大的流水线功能。
1 创建一个 流水线
类型的任务
2 填写Pipeline脚本:
node {def mvnHomestage('Preparation') { // for display purposes// clone源码git 'https://gitee.com/itmuch/spring-cloud-yes.git'// 这里的maven-3.5.0必须跟全局工具配置中设置的Maven名称一致 mvnHome = tool 'maven-3.5.0'}stage('Build') {// Run the maven buildif (isUnix()) {sh "'${mvnHome}/bin/mvn' clean install"} else {bat(/"${mvnHome}\bin\mvn" clean install/)}}stage('Email') {mail bcc: '', body: '构建成功。', cc: '511932633@qq.com', from: 'eacdy0000@126.com', replyTo: '', subject: '构建成功', to: 'eacdy0000@126.com'}
}
如代码所示,我们编写了一个流水线,该流水线包含三个阶段:
- Preparation:在该阶段中,我们Clone源码,同时,定义了一个变量叫mvnHome。
- Build:在该阶段中,我们执行
mvn clean install
命令,其中针对操作系统做了判断。 - Email:如果构建成功,就发送邮件到
511932633 @ qq.com
。
3 Pipeline脚本功能非常强大,默认支持数十个指令!你可能担心指令学习的成本,但这种担心其实是多余的——只需点击下图中的 流水线语法
按钮,就可以傻瓜化地使用Pipeline语法啦!
持续集成工具Jenkins看这篇就够啦!相关推荐
- jenkins maven没有使用全局设置文件地址_持续集成工具Jenkins看这篇就够啦!
本文基于当前最新的 LTS 版本 2.164.1 ,理论上适应于Jenkins 2.x所有版本. 一.下载 前往Jenkins官网[1] ,按需下载.如用于生产,建议下载Long-term Suppo ...
- Jenkins 流水线 获取git 分支列表_持续集成工具Jenkins看这篇就够啦!
本文以基于当前最新的 LTS 版本 2.164.1 ,理论上适应于Jenkins 2.x所有版本. 一.下载 前往Jenkins官网 ,按需下载.如用于生产,建议下载Long-term Support ...
- python 持续集成工具_持续集成工具: Jenkins学习
持续集成工具: Jenkins学习 -- 部分内容收集自网络,如有侵权,请联系作者删除 一. 概念 在过去的开发整体流程中,是所有人写好代码之后统一进行合并(svn,git),然后进行测试,确保准发布 ...
- Jenkin持续集成部署-Jenkins常用插件篇
Jenkin持续集成部署-Jenkins常用插件篇 前言 1. maven插件 2. pipeline 3. SSH 4. Docker 5. Blue Ocean 6. 自定义配置JDK 前言 本篇 ...
- 【云原生 • DevOps】一文掌握持续集成工具 Jenkins
目录 一.持续集成工具 Jenkins 介绍 1. 什么是持续集成 2. Jenkins 介绍 二.Jenkins 的安装与部署 1. 安装 Jenkins 2. 本地访问 Jenkins 3. 插件 ...
- 持续集成工具Jenkins学习4 Idea集成Jenkins插件
持续集成工具Jenkins学习4 Idea集成Jenkins插件 一.功能简介 二.安装Idea插件 1. 搜索安装 2. 设置 三.Jenkins开启CSRF 四.使用 一.功能简介 Idea可以方 ...
- 持续集成工具jenkins的部署--Windows篇
一.前言 Jenkins是一个开源软件项目,是基于Java开发的一种持续集成工具,用于监控持续重复的工作,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能.本文使用Jenkins构建githu ...
- 持续集成工具 jenkins
研究比较深入的博客地址: http://blog.csdn.net/wangmuming/article/category/2167947 Jenkins安装与配置 2 Jenkins安装 在最简单的 ...
- jenkins 忘记密码_持续集成工具Jenkins 在CentOS系统下安装
一.Jenkins简介 Jenkins是一个开源的持续集成工具,用于持续.自动的构建.测试.发布项目.Jenkins使用Java开发,可与版本管理工具集成使用. Jenkins支持UI操作来部署流水线 ...
最新文章
- javascript必知必会之prototype
- Array K-Coloring
- Kettle使用_13 表输入并发运行与复制数量
- Nacos源码BeatInfo
- stax 和jaxb 关系_XML解组基准:JAXB,STAx,Woodstox
- c语言math函数 sgn,常用矩阵计算C语言代码
- LeetCode15:三数之和(转载思路)
- 12家无人驾驶公司新进展:驾照怕白考了!
- python私人定制_手把手教你学python第十五讲(魔法方法续私人“定制”)
- PIL图像处理时使用np.unit8转化报错: Cannot handle this data type: (1, 1), |O
- Debian9安装QT5.12.3
- CentOS出错You don#39;t have permission to access on this server
- ucinet网络分析使用总结
- 混淆的艺术-(苍井空变凤姐)Proguard源码分析(三)Proguard配置解析~上
- 艾宾浩斯遗忘曲线-计划表30天
- qq飞车手游服务器维护中,QQ飞车手游3月28日停机维护到几点_QQ飞车手游3.28停机维护时间_玩游戏网...
- 局域网网络流量监控_网工必知:用于监控企业网络的10款最佳工具,拿走!不谢...
- 视频目标分割数据集DAVIS(Denly-Annotated VIdeo Segmentation)解读
- 大三计算机组成原理深度学习——机器字长、存储单元、存储字长、存储容量,存储体的概念
- 如果你对未来还有点迷茫不妨来看一下,必看的软件测试指引!!!