Jenkins快速介绍及自动化构建实战
文章目录
- Jenkins是什么
- Jenkins基本功能
- Jenkins下载与安装:
- 创建自动化构建任务
- Jenkins关闭和重启
Jenkins是什么
Jenkins是开源的CI(持续集成)和CD(持续部署)领导者,其提供了丰富的插件支持构建、部署以及自动化。
与之相同的产品是Atlassian的Bamboo.
https://www.atlassian.com/de/software/bamboo
Atlassian是澳大利亚的一家知名软件开发商,其知名的产品包括:
- JIRA: 任务管理和追踪系统
- Bitbucket(曾经叫Stash), 基于Git的版本控制, 有Web的管理平台。
- Confluence,知识管理与协作软件, 可以用于构建企业Wiki。
言归正传, 回到Jenkins, Jenkins的功能能完全与Bamboo媲美, 但Bamboo是需要收费的。
Jenkins基本功能
Jenkins的基本功能包括:
- 源码管理: 获取Git或是Subersion的代码
- 构建: 执行本地命令脚本(包括Windows批处理和Linux的Shell等),调用Ant、Maven和Gradle等构建脚本等
- 构建后操作: 产生测试报告,归档成品或是通过Email发送部署通知等。
- 触发器,可以定时构建或是根据某个时间触发部署
出基本功能,通过插件, Jenkins可以通过SSH执行远端命令或脚本,甚至可以实现部署中的流程签核等功能。
Jenkins下载与安装:
Jenkins下载地址如下:
https://jenkins.io/zh/download
Jenkins提供了不同操作系统或是容器(Docker)的安装档,同时也提供了 .war的压缩包,可以放入Java Web服务器中。早期的Jenkins还提供了 .jar的文件,使用 java就可以运行。
在Windows下最方便的就是下载安装档,下载的是.msi的安装档jenkins.msi, 一直下一步进行安装。
安装档安装的方式自带Jetty作为Servlet容器,默认通过8080端口访问。
安装完成会自动启动, 在浏览器输入:http://localhost:8080/ 会出现
Please wait while …的画面,
之后需要解锁Jenkins,就是输入初始的管理员密码, 解锁的步骤是把安装路径下的secrets\initialAdminPassword 内容贴到管理员密码的输入框之后,
找到文件,打开复制之后,点击继续后进入插件安装画面, 这里有“安装推荐的插件”和“选择插件来安装”两个选项,这里选择安装推荐插件就可以了
点击“安装推荐的插件”之后,画面如下:
安装的推荐插件的分类及插件包括:
源码控制: Git, GitHub Branch Source, Subversion
构建: Ant、Gradle
认证与授权: SSH Slaves,Credentials Binding,PAM Authentication , LDAP
Matrix Authorization Strategy
通知:Emai Extension、Mailer
流程: Pipeline
插件的安装需要较长时间, 耐心等待…
插件安装完成会弹出创建管理员的的页面,输入用户名、密码等之后保存。电子邮件必须输入。
设定Jenkins的地址:
默认是 http://localhost:8080/ , 可以修改端口或是路径。
设置完成,单击开始使用Jenkins按钮,
插件安装完成,最好是重启Jenkins, 否则会有中文没有完全转化等问题。重启参考本篇最后部分。
创建自动化构建任务
这里自动化构建实战的步骤包括:
1.取Git的代码为例,
2.使用Maven构建产生war档,
3. 调用Weblogic命令更新war档,
4. 部署后发信通知为例。
在Jenkins中的操作步骤如下:
点击"创建一个新任务"
输入任务名称,类型选择Freestyle Project后进行任务设置页面,可以设置的内容包括:基本信息、源码管理、构建触发器、构建环境、构建、构建后操作。
基本信息配置
主要配置 丢弃旧的构建一项
以为每次执行,都会有日志, 这个就是设置保存记录规则, 可以是按天,或是按构建次数进行设置源码管理
选择Git
在Repository URL: 输入Git的地址
Credential中点击添加,输入Git的用户名、密码后。
指定分支构建触发器
触发方式有很多种,以定时构建为例,勾选定时构建,使用Cron表达式定义计划。
格式如下:
MINUTE HOUR DOM MONTH DOW
MINUTE 分钟 (0–59)
HOUR 小时 (0–23)
DOM 月的天数 (1–31)
MONTH 月 (1–12)
DOW The day of the week (0–7) , 星期, 0和7是周末.
比如:工作日每天下午6点执行是:
0 18 * * 1-5构建
选择调用顶层Maven目标,对于Maven Java项目, 打包忽略测试, 在目标中输入:
package -Dmaven.test.skip=true构建后发信
选择E-mail Notification后在Recipients中输入收信的地址。
Jenkins关闭和重启
Jenkins的启动和关闭可以在电脑管理的Services中进行。步骤如下:
右键单击电脑, 选择管理,在Services找到Jenkins。
Jenkins快速介绍及自动化构建实战相关推荐
- Jenkins 与 GitLab 的自动化构建之旅
本文来自作者 墨雪卿 在 GitChat 上分享 「Jenkins 与 GitLab 的自动化构建之旅」,「阅读原文」查看交流实录. 「文末高能」 上一篇:<Git 企业开发者教程> 1. ...
- SpringCloud+Docker+Jenkins+GitLab+Maven实现自动化构建与部署实战
作者:寅务 www.jianshu.com/p/bdb0642b7495 1.前言与初衷 本文章会涉及Docker常见命令基础知识点结合不同场景实操一起使用. 本文章会涉及结合工作过程中部署不同环境服 ...
- jenkins和docker实现自动化构建部署
应用场景 程序员开发应用,开发后需要提交gitlub,然后从gitlab拉取代码,进行构建,发布到tomcat中然后发布看呈现效果,这样的工作是频繁反复的在进行的,浪费了程序员的大量时间,那么能不能把 ...
- Jenkins+Ant+TestNG+Testlink自动化构建集成
这段时间折腾自动化测试,之前都是在Eclipse工程里面手工执行自动化测试脚本,调用Testlink API执行测试用例,目前搭建Jenkins自动化构建测试的方式,实现持续构建,执行自动化测试. 硬 ...
- 使用Jenkins配置SpringBoot的自动化构建
相关阅读 1.使用Jenkins配置Git+Maven的自动化构建 2.Jenkins部署Maven多环境项目(dev.beta.prod)的参数设置 3.使用Generic Webhook Trig ...
- Jenkins+Maven+Gitlab+Tomcat 自动化构建打包、部署
一.环境需求 本帖针对的是Linux环境,Windows或其他系统也可借鉴.具体只讲述Jenkins配置以及整个流程的实现. 1.JDK(或JRE)及Java环境变量配置,我用的是JDK1.8.0_1 ...
- Jenkins集成GitLab Webhooks自动化构建
Jenkins+GitLab Webhooks自动构建项目 1 构建步骤 1.1 Jenkins中设置构建触发器 1.2 Build Authorization Token Root插件安装 1.3 ...
- Jenkins+docker+maven+git自动化构建与部署
2019独角兽企业重金招聘Python工程师标准>>> 公司项目需要,本地提供代码管理+git+jenkins+maven环境,通过SSH发布到docker服务器进行部署 持续集成的 ...
- jenkins+github+docker+maven自动化构建部署
2019独角兽企业重金招聘Python工程师标准>>> 1. jenkins插件的安装 1.1 全局工具配置(jdk1.8 + maven + docker) 点击:系统管理 --& ...
最新文章
- .NET(C#)时间日期字符串(String)格式化转换成Datetime异常报错问题
- UNITY 接讯飞语音过程总结
- 如何获取58上真实号码_如何获取Apollo上项目下的所有namespace?
- 【岗位详情】腾讯广告机制策略算法工程师(北京)
- Oracle中的within,oracle中within group的用法
- tensorflow+入门笔记︱基本张量tensor理解与tensorflow运行结构与相关报错
- 电脑族每天宜喝四杯茶
- CAD导出.eps格式图
- 五款在线思维导图工具的比较
- linux下xampp的使用教程,Linux下安装xampp教程
- petalinux设计流程
- R语言使用quantmod包的getSymbols函数从指定金融数据源获取指定时间段的股票数据、获取美国10年期债券收益率数据
- 日常开发用到的谷歌浏览器插件
- JAVA图形小动画之简单行星运动
- 【A Unified Model for Multi-class Anomaly Detection, NeurIPS 2022】
- 一种h5前端和服务端通信的安全方案
- 电子科技大学信息与软件工程学院考研复试体会
- 威伦TK6070iQ触摸屏的使用
- 城市路口闯红灯监测系统
- 密码学读书笔记系列(一):《密码故事——人类智力的另类较量》