一、介绍Jenkins

1、Jenkins概念

  Jenkins是一个功能强大的应用程序,允许持续集成和持续交付项目,无论用的是什么平台。这是一个免费的源代码,可以处理任何类型的构建或持续集成。集成Jenkins可以用于一些测试和部署技术。Jenkins是一种软件允许持续集成。

2、Jenkins目的

① 持续、自动地构建/测试软件项目。

② 监控软件开放流程,快速问题定位及处理,提示开放效率。

3、特性

① 开源的java语言开发持续集成工具,支持CI,CD。

② 易于安装部署配置:可通过yum安装,或下载war包以及通过docker容器等快速实现安装部署,可方便web界面配置管理。

③ 消息通知及测试报告:集成RSS/E-mail通过RSS发布构建结果或当构建完成时通过e-mail通知,生成JUnit/TestNG测试报告。

④ 分布式构建:支持Jenkins能够让多台计算机一起构建/测试。

⑤ 文件识别:Jenkins能够跟踪哪次构建生成哪些jar,哪次构建使用哪个版本的jar等。

⑥ 丰富的插件支持:支持扩展插件,你可以开发适合自己团队使用的工具,如git,svn,maven,docker等。

4、产品发布流程

产品设计成型 -> 开发人员开发代码 -> 测试人员测试功能 -> 运维人员发布上线

持续集成 (Continuous integration,简称CI)

持续交付(Continuous delivery)

持续部署(continuous deployment)

二、安装Jenkins

1、安装JDK

Jenkins是Java编写的,所以需要先安装JDK,这里采用yum安装,如果对版本有需求,可以直接在Oracle官网下载JDK;也可自己编译安装。

[root@jenkins ~]# yum install -y java-1.8.0

2、安装Jekins

[root@jenkins ~]# cd /etc/yum.repos.d/

[root@jenkins yum.repos.d]# wget http://pkg.jenkins.io/redhat/jenkins.repo

[root@jenkins ~]# rpm --import http://pkg.jenkins.io/redhat/jenkins.io.key

[root@jenkins ~]# yum install -y jenkins

3、修改配置文件

(1)查询yum下载Jenkins安装的文件

[root@jenkins ~]# rpm -ql jenkins

/etc/init.d/jenkins
/etc/logrotate.d/jenkins
/etc/sysconfig/jenkins
/usr/lib/jenkins
/usr/lib/jenkins/jenkins.war
/usr/sbin/rcjenkins
/var/cache/jenkins
/var/lib/jenkins
/var/log/jenkins

(2)创建Jenkins主目录

[root@jenkins ~]# mkdir /data/jenkins -p

[root@jenkins ~]# chown -R jenkins.jenkins /data/jenkins/

(3)修改配置文件

[root@jenkins ~]# vim /etc/sysconfig/jenkins

JENKINS_HOME="/mnt/cellar/jenkins"
JENKINS_USER="jenkins"
JENKINS_JAVA_OPTIONS="-Djava.awt.headless=true -Xms256m -Xmx512m -XX:MaxNewSize=256m -XX:Maxize=256m"
JENKINS_PORT="8000" 

(4)开启Jenkins服务

[root@jenkins bin]# systemctl start jenkins

(5)网页打开配置

打开192.168.130.110:8000/

① 为了安全考虑,首先需要解锁Jenkins,请在/var/lib/jenkins/secrets/initialAdminPassword中查看文件。

在Jenkins服务器上查询管理员密码

[root@centos7-1 ~]# cat /data/jenkins/secrets/initialAdminPassword

250d0360e2a149dbb7402f96a26945e2

② 选择需要安装的插件

选择默认推荐即可,会安装通用的社区插件,剩下的可以在使用的时候再进行安装。

开始安装,由于网络原因,有一些插件会安装失败。

③ 设置Admin用户和密码

④ 安装完成

⑤ 登录Jenkins

三、安装完后,简单的配置

1、系统配置

① 系统消息:Welcome to Jenkins~

② 全局属性--->环境变量,可根据自己的项目添加;如:gitlab:

③ 扩展邮件通知(用于之后项目构建后发送邮件)

④ 邮件配置

  管理监控配置--->系统管理员邮件地址:along@163.com,要和下面的用户名一致;

  邮件通知,配置如下:可以点击测试,是否配置成功

2、全局工具配置

如果你持续集成需要用的哪些工具,就需要在这里添加配置;后边持续集成中,将会详细讲解;

这里只举例:添加JDK工具

点击新增---> 取消自动安装 ---->然后查询Jenkins服务器上JDK的路径,填写JAVA_HOME --->  保存即可

3、插件管理

这里有可更新、可选未安装插件、已安装插件;可以通过过滤快速查找

四、开始一个简单的项目

1、新建任务

输入一个项目名称,构建一个自由风格的软件项目

2、配置项目

(1)General

描述:test    自己随意添加;

显示名称:along  是Jenkins看到的项目名称;

其他更多的用法,后续再讲;

(2)源码管理(就是拉取代码的地方,可以选择git或SVN)

① 选择git,输入gitlab项目地址

② 点击Add添加凭据

选择SSH Username with pricate key,秘钥认证,输入私钥即可;

注:Jenkins服务器需在gitlab项目上有key

因为只是简单的示范,所以就只有这些简单的配置;

3、构建项目

(1)点击项目damo,立即构建

(2)可以点击#1,查询详细的控制台输出信息;

(3)在Jenkins服务器上认证

在这个目录下能找到自己拉取git的项目;证明项目成功完成

[root@jenkins ~]# ls /data/jenkins/workspace/

damo  damo@tmp

转自https://www.cnblogs.com/along21/

16.1-Jenkins持续集成01—Jenkins服务搭建和部署的更多相关文章

  1. Jenkins持续集成01—Jenkins服务搭建和部署

    一.介绍Jenkins 1.Jenkins概念 Jenkins是一个功能强大的应用程序,允许持续集成和持续交付项目,无论用的是什么平台.这是一个免费的源代码,可以处理任何类型的构建或持续集成.集成Je ...

  2. jenkins持续集成工作原理、功能、部署方式等介绍

    超详细的jenkins持续集成工作原理.功能.部署方式等介绍 原创 波波说运维 2019-08-29 00:01:00 概述 今天简单整理了一下jenkins的一些概念性内容,归纳如下: 1.概念 j ...

  3. linux环境下搭建Jenkins持续集成(Jenkins+git+shell+maven+tomact)

    准备环境 jenkins.war包 ,jdk1.8  ,tomact , maven,git 1.Jenkins  war包,下载地址https://jenkins.io/zh/download/  ...

  4. 利用 Jenkins 持续集成 iOS 项目,搭建自动化打包环境

    ---恢复内容开始--- jenkins是一个广泛用于持续构建的可视化web工具,持续构建即各种项目的”自动化”编译.打包.分发部署.jenkins可以很好的支持各种语言(比如:Java, c#, P ...

  5. Jenkins持续集成实践之java项目自动化部署

    关于Linux安装Jenkins可以参考我的这篇博文Ubuntu16.04环境安装jenkins 1.安装部署插件 进入插件管理,并搜索该插件Deploy to container Plugin进行安 ...

  6. jenkins持续集成:jenkins+SVN

    实现jenkins从svn拉取最新的代码,再执行驱动脚本进行自动化测试 新建一个任务 输入任务名,选“构建一个自由风格的软件项目”,点左下角“确定” 丢弃旧的构建,如下设置为保留3天内的10条构建记录 ...

  7. git+jenkins持续集成二-jenkins定时构建语法:定时构建语法

    构建位置:选择或创建工程_设置_构建触发器 1. 定时构建语法:* * * * * (五颗星,多个时间点,中间用逗号隔开)第一个*表示分钟,取值0~59第二个*表示小时,取值0~23第三个*表示一个月 ...

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

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

  9. 基于Kubernetes/K8S构建Jenkins持续集成平台(上)-2

    基于Kubernetes/K8S构建Jenkins持续集成平台(上)-2 Kubernetes实现Master-Slave分布式构建方案 传统Jenkins的Master-Slave方案的缺陷 Mas ...

随机推荐

  1. ProtobufUtils

    import java.io.IOException; import java.io.InputStream; import java.lang.reflect.Method; import com. ...

  2. linux tcpdump抓取HTTP包的详细解释

    tcpdump tcpdump是linux系统自带的抓包工具,主要通过命令行的方式,比较适合在线上服务器进行抓包操作,如果是windows或者ubuntu完全可 以选择一些图形化的工具,ubuntu比 ...

  3. Spring学习(五)事务管理

    Spring 事务管理: 一.事务概念: 1.什么是事务? 事务是应用程序中一系列严密的操作,所有操作必须成功完成,否则在每个操作中所作的所有更改都会被撤消.也就是事务具有原子性,一个事务中的一系列的 ...

  4. UVALive - 6440

    题目链接:https://vjudge.net/contest/241341#problem/G Indonesia, as well as some neighboring Southeast As ...

  5. Nodejs mysql pool使用实例

    前段时间在写一个版本发布工具,用到express+mysql实现,当站点运行很长一段空白时间后,node进程会自动down掉,提示mysql连接错误,谷歌后发现是mysql自身的特性导致,因此后来改为 ...

  6. Xcode警告忽略

    Xcode中 cmd+B 之后总会出现各种各样的警告,对于一个对代码有洁癖的人,这种情况很难忍,接下来我们用些特殊手段强制消除这些警告  一.忽略源文件中的警告 使用编译器宏来操作 #pragma c ...

  7. cd进入相关目录的命令

    今天不记得怎么进入Linux的根目录了,查询了下顺便复习下其他命令: 1.[root@localhost]#cd /usr 切换至根目录下的文件夹要加"/" 2.[root@loc ...

  8. JS实现2048

    2048这个游戏是通过对二维数组的操作来实现的,其算法核心如下: (以一行左移为例) c从0开始,遍历当前行中的元素,到<CN-1(CN是一个常量,表示的是游戏格子的列数)结束,每次+1 找到当 ...

  9. 全面理解HTTP协议

    引言:作为一名软件工程Web专业学生,对于HTTP的熟悉掌握是必不可少的,特此做记录,打造自己的HTTP栈. URL与URI 我们经常接触到的就是URL了,它就是我们访问web的一个字符串地址,那么U ...

  10. Android仿微信高效压缩图片(libjpeg)

    用过ios手机的同学应该很明显感觉到,ios拍照1M的图片要比安卓拍照排出来的5M的图片还要清晰.这是为什么呢? 这得了解android底层是如何对图片进行处理的. 当时谷歌开发Android的时候, ...