Linux进阶之Jenkins持续集成介绍及安装演示
一、Jenkins介绍
Jenkins是一个开源软件项目,是基于Java开发的一种持续集成工具,用于监控持续重复的工作,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能。
Jenkins功能包括:
1、持续的软件版本发布/测试项目。
2、监控外部调用执行的工作。
特点:
1. jenkins就是基于Java开发的一种持续集成的工具
2. 可以将运维用到的各个脚本整合起来,并且可以通过页面方式集中管理,而且也可以实现和gitlab、github交互,也可以实现自动编译、部署程序等。
二、持续集成
持续集成是一种软件开发实践,即团队开发成员经常集成他们的工作,通过每个成员每天至少集成一次,也就意味着每天可能会发生多次集成。每次集成都通过自动化的构建(包括编译,发布,自动化测试)来验证,从而尽早地发现集成错误。
持续集成:Continuous Intergration (CI)
持续交付:Continuous Delivery(CD)
持续部署:Continuous Deployment(CD)
持续集成流程
1. 提交(git)
2. 测试
3. 构建(jenkins)
4. 测试
5. 部署(ansible,shell,puppet)
6. 回滚(ansible)
三、Jenkins的安装
jenkins是基于java开发的,所以需要安装java环境
jenkins提供了一个友好的web界面操控,安装完成之后我们可以在web端进行管理
可以在网站pkg.jenkins.io下载所需要的jenkins版本
http://pkg.jenkins.io/
第一步:检查环境
[root@ren5 ~]# getenforce
Disabled
[root@ren5 ~]# systemctl status firewalld
第二步:安装Java环境(用本地的yum仓库1.8版本)
[root@ren5 ~]# yum -y install java
第三步:上传安装包及解压
[root@ren5 ~]# ls
anaconda-ks.cfg jenkins-2.32.3-1.1.noarch.rpm
[root@ren5 ~]# rpm -ivh jenkins-2.32.3-1.1.noarch.rpm
第四步:启动Jenkins
Jenkins默认监听8080端口
[root@ren5 ~]# netstat -anp |grep Jenkins #查不到监听的端口号
[root@ren5 ~]# ps aux |grep Jenkins #先查看Jenkins的PID
[root@ren5 ~]# netstat -anp |grep 9333 #在查看进程号对应监听的端口号
tcp6 0 0 :::8080 :::* LISTEN 9333/java
tcp6 0 0 :::44035 :::* LISTEN 9333/java
添加防火墙:
[root@ren5 ~]# firewall-cmd --add-port=8080/tcp
success
[root@ren5 ~]# firewall-cmd --add-port=8080/tcp --permanent
success
第五步:浏览器访问
注意:安装jenkins会卡在安装界面
原因:当前主机尝试连接jenkins官方站点,但是无法连接上
解决:断开当前主机的网络连接
第六步:linux中找到第五步中提到的密码路径并复制
[root@ren4 ~]# cat /var/lib/jenkins/secrets/initialAdminPassword
d9ebeb586e594011b23139ac721e57d8
密码复制成功后进入安装界面
选择跳过插件安装
创建用户和密码
出现如下界面直接保存并完成
点下面出现的开始使用Jenkins
出现如下界面表示安装配置完成
第七步:Jenkins获取插件并安装
1、查看插件信息(系统管理——插件管理)
注意:下载插件之前可以在系统管理>关于jenkins查看自己的jenkins版本信息
2、下载插件(访问网站updates.jenkins-ci.org,选择你的jenkins版本)
选择latest,选择需要安装的插件,插件都是以hpi结尾的
3、把下载的插件传入到你的linux系统中
需要把插件传到jenkins的插件目录中即下面的目录下
[root@ren4 ~]# mv plugins.tar.gz /var/lib/jenkins/plugins/
[root@ren4 ~]# cd /var/lib/jenkins/plugins/
[root@ren4 plugins]# ls
plugins.tar.gz
[root@ren4 plugins]# tar xf plugins.tar.gz
[root@ren4 plugins]# cp -a plugins/* .
4、重启Jenkins
[root@ren4 plugins]# systemctl restart jenkins
5、浏览器端查看
需要刷新一下浏览器,可能还需要你重新输入账号和密码
可以看到在已安装里面已经有很多的插件了
第八步:Jenkins版本更新
1、下载安装更新的软件包(访问网站updates.jenkins-ci.org,选择需要升级到的版本)
选择latest,选择war结尾的包下载
2、把本机需要升级的war包删掉
3、替换成下载的包
4、重启Jenkins
四、Jenkins凭证介绍
有许多第三方网站和应用程序可以与 Jenkins 进行交互,例如程序代码仓库,云存储系统和服务等。
此类应用程序的系统管理员可以在应用程序中配置凭证以专供 Jenkins 使用。通常通过将访问控制应用于这些凭证来完成这项工作,以“锁定”Jenkins可用的应用程序功能区域。一旦 Jenkins 管理员(即管理 Jenkins 站点的 Jenkins 用户)在 Jenkins 中添加/配置这些凭证,Pipeline 项目就可以使用凭证与这些第三方应用程序进行交互。
Jenkins 中保存的凭证可以用于:
任何适用于 Jenkins 的任何地方(即全局证书)
特定的 Pipeline 项目
特定的 Jenkins 用户
Jenkins凭证的创建:
第一步:创建凭证
进入你的jenkins的首页,点击左边栏的凭证(Credentials)
第二步:点击全局凭据
第三步:点击 添加一些凭据
第四步:输入信息
在出现的对话框中输入你的信息点击确定即可
第五步:首页查看
五、新建任务
所谓的任务可以理解为:需要执行的一系列动作。
第一步:点击新建任务
第二步:输入要创建的任务名称
输入完成点击下方的确定即可
注意:名称不能有空格
第三步:填写你需要看到的信息
在参数构建过程中参数有:文本参数和选项参数
第四步:git获取项目
URL输入你的项目地址
凭证哪里添加可以获取到你的项目的用户和用户名
branch哪里添加分支
第五步:构建
就是把你的命令添加在这里即可
在shell中添加如下内容并保存即可
第六步:构建参数
如果你选择了选项参数,在这个任务界面就可以看到这个选项
点开这个,就会看到我们刚才输入的type以及auto了(忘记了请往上翻一下哦)
第七步:返回结果
如果执行成功了左下角的圆圈就是蓝色的
执行失败了就是红色
鼠标放上去也会看到提示信息的
第八步:查看执行过程
第一列:的/var/lib/jenkins/workspace/test_for_block 是echo 的结果,表示jenkins现在工作目录是在你的任务名称下的
第二列:显示当前所在的目录,其实可以发现我们现在就处在自己的新建任务的同名目录中
第三列:进入到工作目录,即当下
第四列:给我们展示了当前目录下的所有文件,可以看到我们远程仓库中的文件已经被拉取到了当前文件夹下
六、pipeline结构介绍
层级结构
第一层:pipline,这是最外层
第二层:stages,这层是用来完成一个特定的工作,其中有一个或者多个子层,每个子层是一个stage
第三册:stage,这是stages的子层
第四层:steps,这层是定义具体要执行的操作
区域:
1. agent:定义当前的job运行在哪个jenkins节点上
any:
none:
node:
agent {node {label 'ser1'}}
agent any
2. environment:定义环境变量
格式:变量名=变量值
3. script:可选的
4. steps:借助于特定的jenkis模块来完成特定的工作
echo
sh
git
pipeline演示
第一步:新建任务
选择流水线
第二步:编写pipeline
可以发现这里面的界面比我们之前选择的freestyle界面简洁的多
在这里填写你的pipeline保存即可
第三步:构建
点击立即构建即可
第四步:查看执行结果
可以发现执行成功
pipeline的功能很多,在接下来的博客当中会使用pipeline完成动态网站的持续集成部署。
Linux进阶之Jenkins持续集成介绍及安装演示的更多相关文章
- Jenkins持续集成企业实战系列之Jenkins持续集成简介及安装-----02
1. Jenkins持续集成简介 注:原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任. 最初接触Jenkins也是由于公司需求, ...
- Jenkins持续集成介绍及插件安装版本更新演示(一)--技术流ken
Jenkins介绍 Jenkins是一个开源软件项目,是基于Java开发的一种持续集成工具,用于监控持续重复的工作,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能. Jenkins功能包括: ...
- jenkins 持续集成笔记1 --- 安装配置
jenkins 安装 先安装Tomcat,然后下载jenkins war包,启动Tomcat即可 wget https://mirrors.huaweicloud.com/apache/tomcat/ ...
- Jenkins持续集成企业实战系列之Jenkins插件下载及邮件配置-----05
注:原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任. 最初接触Jenkins也是由于公司需求,根据公司需求Java代码项目升级的.(公司是 ...
- Jenkins持续集成企业实战系列之Jenkins手动构建-----04
注:原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任. 最初接触Jenkins也是由于公司需求,根据公司需求Java代码项目升级的.(公司是 ...
- Jenkins持续集成企业实战系列之Jenkins配置演示-----03
注:原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任. 最初接触Jenkins也是由于公司需求,根据公司需求Java代码项目升级的.(公司是 ...
- Jenkins持续集成企业实战系列之两种网站部署的流程-----01
注:原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任. 最初接触Jenkins也是由于公司需求,根据公司需求Java代码项目升级的.(公司是 ...
- jenkins持续集成工作原理、功能、部署方式等介绍
超详细的jenkins持续集成工作原理.功能.部署方式等介绍 原创 波波说运维 2019-08-29 00:01:00 概述 今天简单整理了一下jenkins的一些概念性内容,归纳如下: 1.概念 j ...
- Jenkins持续集成学习-搭建jenkins问题汇总
目录 Jenkins持续集成学习5-搭建jenkins问题汇总 目录 前言 问题列表 nuget还原包问题 编译问题 SVN更新问题 参考文档 Jenkins持续集成学习5-搭建jenkins问题汇总 ...
随机推荐
- Object o = new Object()占多少个字节?-对象的内存布局
一.先上答案 这个问题有坑,有两种回答 第一种解释: object实例对象,占16个字节. 第二种解释: Object o:普通对象指针(ordinary object pointer),占4个字节. ...
- MySQL提升笔记(4)InnoDB存储结构
这一节本来计划开始索引的学习,但是在InnoDB存储引擎的索引里,存在一些数据存储结构的概念,这一节先了解一下InnodDB的逻辑存储结构,为索引的学习打好基础. 从InnoDB存储引擎的存储结构看, ...
- 关gzip压缩,我有新发现
1 gzip的压缩效果是立竿见影的: 2 网站是否开启gzip的查看方式 2.1 打开Chrome浏览器,按 F12打开调试面板 2.2 切换到network页签,在网络请求列表的表头,鼠标右键==& ...
- 6. VUE 指令-概述
指令 (Directives) 是带有 v- 前缀的特殊特性.指令特性的值预期是单个 JavaScript 表达式 (v-for是例外情况,稍后我们再讨论).指令的职责是,当表达式的值改变时,将其产生 ...
- 孙悟空的身外身法术使用了Java设计模式:原型模式
目录 定义 意图 主要解决问题 何时使用 优缺点 结构 简单形式的原型模式 登记形式的原型模式 两种形式比较 浅克隆和深克隆 孙悟空的身外身法术 浅克隆实现 深克隆实现 定义 原型模式属于对象的创建型 ...
- Day09_41_集合_Set
Set集合 Set集合 - Set集合的特点是无序不可重复.Set集合类似于一个罐子,程序可以依次把多个对象"丢进"Set集合,而Set集合通常不能记住元素的添加顺序. - Set ...
- 为什么传统软件厂商都想转型做Saas?
欢迎关注微信公众号:sap_gui (ERP咨询顾问之家) 早些年,我工作笔记用的最多的是微软的OneNote,这东西好用不说,不仅能够存在云端,也能存放在本地.可惜到了Office2019之后,On ...
- hdu4720 三角形的外接圆
题意: 给你四个点,问你第四个点是否在前三个点围成的三角形的外接圆上. 思路: 水题,就是练练用魔板罢了,当该三角形是锐角三角形的时候,圆心是任意两条边中垂线的交点,半径是圆心 ...
- Windows下包管理工具Bower的安装和使用
目录 安装Bower Bower的使用 安装Bower Windows下安装Bower之前,先安装好 nodejs 和 msysgit 环境 然后我们就可以使用npm包管理工具下载并全局安装bower ...
- CVE-2013-1347:Microsoft IE CGenericElement UAF 漏洞利用样本分析
CVE-2013-1347 漏洞是典型的 IE 浏览器 UAF 漏洞,所以其利用方法和一般的 IE 浏览器漏洞的利用方法非常相似,所以流程大体上可以分为这些步骤:(1) 对象被释放 (2) 精确覆盖被 ...