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. [Git] 001 初识 Git 与 GitHub 之新建仓库

    在 GitHub 的 UI 界面使用 Git 新建一个仓库 1. 点击右上角的 +,选择 New repository 2. 网站会自动跳转至新页面,在下框中填入仓库名 仓库名也有讲究,挖个坑,日后填 ...

  2. eclipse中常用的快捷键【开发常用到的】

    1.全部选中:Ctrl+A 2.剪切Ctrl+X.复制Ctrl+C.粘贴Ctrl+V.保存Ctrl+S 3.撤销Ctrl+Z.取消撤销Ctrl+Y 4.规范代码:Ctrl+Shift+F 5.将代码更 ...

  3. java枚举详解

    枚举的本质是类,枚举是用来构建常量数据结构的模板(初学者可以以此方式理解: public static final X=xxx),枚举的使用增强了程序的健壮性,在引用一个不存在的枚举值的时候,编译器会 ...

  4. Vue.js 源码学习笔记

    最近饶有兴致的又把最新版 Vue.js 的源码学习了一下,觉得真心不错,个人觉得 Vue.js 的代码非常之优雅而且精辟,作者本身可能无 (bu) 意 (xie) 提及这些.那么,就让我来吧:) 程序 ...

  5. 什么是http协议??

    一.http协议的定义: http(Hypertext transfer protocol)超文本传输协议,通过浏览器和服务器进行数据交互,进行超文本(文本.图片.视频等)传输的规定.也就是说,htt ...

  6. SCUT - 271 - CC 非诚勿扰 - FFT

    https://scut.online/p/271 第一次遇到没这么裸的,其实感觉到是卷积但是不知道怎么化.看来以后要多注意下标. #include <bits/stdc++.h> usi ...

  7. [WPF自定义控件库] 关于ScrollViewer和滚动轮劫持(scroll-wheel-hijack)

    原文:[WPF自定义控件库] 关于ScrollViewer和滚动轮劫持(scroll-wheel-hijack) 1. 什么是滚动轮劫持# 这篇文章介绍一个很简单的继承自ScrollViewer的控件 ...

  8. #1062 - Duplicate entry '0' for key 'PRIMARY'—— mysql的小问题

    问题:# 1062 -重复输入“0”. 原因:我估计可能是数据表中主键这一栏已经有一个为“0”了,一般出现这种问题是以int类型的字段在输入时没有输如数据,而int类型默认值为“0”,而你之前第一条数 ...

  9. Java架构师需要掌握的技术栈

  10. 基于 Ansible 的 ELK 部署说明

    ELK-Ansible使用手册 ELK-Ansible 是基于 Ansible 的 Playbooks 研发的 ELK集群部署工具.本文将介绍如何使用 ELK-Ansible 快速部署 ELK 集群. ...