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)

第一步:关闭防火墙

[root@ken ~]# systemctl stop firewalld
[root@ken ~]# setenforce 0

第二步:安装java环境

[root@ken ~]# yum install java -y

第三步:上传安装包及解压安装

[root@ken ~]# ls | grep jenkins
jenkins-2.138.3-1.1.noarch.rpm
[root@ken ~]# rpm -ivh jenkins-2.138.3-1.1.noarch.rpm

第四步:重启jenkins,端口号是8080

第五步:浏览器访问

第六步:linux中找到上述密码并复制进需要输入密钥的框中

[root@ken ~]# cat /var/lib/jenkins/secrets/initialAdminPassword
f10ee04f771042638d1c152355efc8c8

选择推荐插件安装或者选择自己安装插件。然后创建用户和密码,点击保存并完成jenkins就初步完成了。

Jenkins获取插件并安装

一、查看插件信息

如果没有选择推荐的插件,里面已安装显示为空,下面的链接为一些好用的插件包,插件都以hpi结尾。

http://updates.jenkins-ci.org/

二、根据所需选择自己的安装包

三:把下载的插件传入到你的linux系统中

[root@ken ~]#ls /var/lib/jenkins/plugins/

[root@ken ~]# tar xf plugins-2.138.3.tar.gz 
[root@ken ~]# cp plugins/* /var/lib/jenkins/plugins/ -a    #将解压过的插件包都复制到jenkins的插件目录下

第四步:重启jenkins

[root@ken ~]# systemctl restart jenkins      #端口号8080

重新查看已安装,如果插件信息没有更新,可手动刷新几次试试。

jenkins添加凭据

一、凭据介绍

有许多第三方网站和应用程序可以与 Jenkins 进行交互,例如程序代码仓库,云存储系统和服务等。

此类应用程序的系统管理员可以在应用程序中配置凭证以专供 Jenkins 使用。通常通过将访问控制应用于这些凭证来完成这项工作,以“锁定”Jenkins可用的应用程序功能区域。一旦 Jenkins 管理员(即管理 Jenkins 站点的 Jenkins 用户)在 Jenkins 中添加/配置这些凭证,Pipeline 项目就可以使用凭证与这些第三方应用程序进行交互。

Jenkins 中保存的凭证可以用于:

  • 任何适用于 Jenkins 的任何地方(即全局证书)
  • 特定的 Pipeline 项目
  • 特定的 Jenkins 用户

二、凭据的添加

可以给gitlab创建一个凭证,用户是gitlab用户名,密码是gitlab密码这样在调用git做持续集成的时候就可以直接使用该凭证了

第一步:创建凭证

进入你的jenkins的首页,点击左边栏的凭证

选择全局凭据,不设局限。

新建任务演示

如果你想使用jenkins完成日常的工作,那么你必须要学会如何使用任务。

所谓的任务你可以这样理解就是你需要执行的一系列动作

第一步:点击新建任务

二、

输入你要创建的任务名称

输入完成点击下方的确定即可

注意:名称不能有空格

这个名称就是一个目录,接下来我们会演示git,git拉取到的内容就是保存了这个同名目录下面 **

第四步:部署任务

描述随意的介绍一下动作的内容

源码管理一般根据需求选择,这里的简单演示选择无

选择以脚本的形式部署动作,下面的命令意思是

在workspace目录下的任务名目录下创建xixi文件,然后写入‘1111’内容。 

# workspace与plugins为同级目录,都在/var/lib/jenkins/下

 

第五步:保存任务后,去构建任务。

build now意思是立即构建,jenkins会执行此任务,下面显示构建进度,显示蓝色为成功,红色失败。

如果失败,可以点击进去查看控制台输出,根据行任务的所有信息来解决报错。

第六步:点击控制台输出查看任务构建过程。

有时候会需要更改任务动作的细节,可以选择点击任务名重新配置。

需要查看任务构建的历史等都可以查看到,这里就不一 一细说了。

jenkins持续集成、插件以及凭据的更多相关文章

  1. Jenkins持续集成企业实战系列之Jenkins插件下载及邮件配置-----05

    注:原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.    最初接触Jenkins也是由于公司需求,根据公司需求Java代码项目升级的.(公司是 ...

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

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

  3. Jenkins持续集成学习-Windows环境进行.Net开发1

    目录 Jenkins持续集成学习-Windows环境进行.Net开发 目录 前言 目标 使用Jenkins 安装 添加.net环境配置 部署 结语 参考文档 Jenkins持续集成学习-Windows ...

  4. Jenkins持续集成学习-Windows环境进行.Net开发4

    目录 Jenkins持续集成学习-Windows环境进行.Net开发4 目录 前言 目标 Github持续集成 提交代码到Github 从Github更新代码 git上显示构建状态 自动触发构建 Gi ...

  5. 基于Kubernetes/K8S构建Jenkins持续集成平台(下)

    基于Kubernetes/K8S构建Jenkins持续集成平台(下) Jenkins-Master-Slave架构图回顾: 安装和配置NFS NFS简介 NFS(Network File System ...

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

  9. Docker+Jenkins持续集成环境(5): android构建与apk发布

    项目组除了常规的java项目,还有不少android项目,如何使用jenkins来实现自动构建呢?本文会介绍安卓项目通过jenkins构建的方法,并设计开发一个类似蒲公英的app托管平台. andro ...

  10. 行为驱动:Cucumber + Selenium + Java(二) - extentreports 测试报告+jenkins持续集成

    1.extentreports 测试报告 pom文件 <dependency> <groupId>com.vimalselvam</groupId> <art ...

随机推荐

  1. TCP 和 UDP 的区别---还有一个UTP一

    面试的时候会经常问到这些问题,所以要对比了解一下他们之间的差别,能讲出个所以然来.多积累多总结,懵逼中... TCP 和 UDP TCP与UDP基本区别 : 1.基于连接与无连接 2.TCP要求系统资 ...

  2. MySQL-第十一篇JDBC典型用法

    1.JDBC常用方式      1>DriverManager:管理JDBC驱动的服务类.主要用于获取Connection.其主要包含的方法: public static synchronize ...

  3. ajax与json总结

    1.jquery中调用ajax方法 $.ajax({ async:true, type:"post", url:"xxxServlet", data:{&quo ...

  4. python 搜索路径顺序查找

    但我们通过 import 或者frome .. import...查找模块的时候,当你导入一个模块,Python 解析器对模块位置的搜索顺序是 1.当前目录 2, 如果不在当前目录,Python 则搜 ...

  5. 类的基本概念及self是什么东西?

    class 类 对一类拥有相同属性的对象的抽象.蓝图.原型,在类中定义了这些对象都具备的属性.共同方法 object对象 一个对象就是一个类的实例化模型,一个类必须经过实例化后才能在程序中调用,一个类 ...

  6. Add JWT Bearer Authorization to Swagger and ASP.NET Core

    Add JWT Bearer Authorization to Swagger and ASP.NET Core     If you have an ASP.NET Core web applica ...

  7. spark复习笔记(6):数据倾斜

    一.数据倾斜 spark数据倾斜,map阶段对key进行重新划分.大量的数据在经过hash计算之后,进入到相同的分区中,zao

  8. 详解Document.Cookie

    转自:https://www.jb51.net/article/77009.htm 具体来说cookie机制采用的是在客户端保持状态的方案,而session机制采用的是在服务器端保持状态的方案. 同时 ...

  9. 安装Erlang使用RabbitMQ

    首先登陆官网进行下载:https://www.erlang.org/downloads/20.3 本次下载的版本是20.3,rabbitmq准备使用3.7.17版本 现在开始安装 因为是使用c#语言, ...

  10. device eth0/1 does not seem to be present, delaying initialization

    vmlite虚拟机启动出错,就把这个虚拟机删除掉重新建立,系统虚拟硬盘使用之前的,启动系统后不能上网,通过ifconfig查看网卡没启动,遂启动网卡服务,但是出错,就是:device eth0 doe ...