第五课:快速掌握jenkins核心功能.docx

  • 2.164 (2019-02) and newer: Java 8 or Java 11

一、jenkins 概述与环境配置

知识点:

  1. 关于可持续化集成 (CI)
  2. jenkins 概述
  3. 下载安装jenkins
  4. 基础环境配置与常用插件下载

1、关于可持续化集成

相信大家都知道jenkins是用来做可持续集成的? 但部问题是很多人并不明白什么叫可持续化集成。讲概念之前我们先来举一个场景:

一个团队正着手开发一个项目,在需求评审之后由小组长把项目拆成了若干个模块,分给不同的小伙伴去实现。2个星期以后各自模块的功能都实现了,大家都很开心。这时该合在一起提测了吧。这一合小组长傻眼了,功能没一个能用的,要么公共类冲突了,要么配置冲突....

经过上次的教训,小组长变聪明了,在也不等功能开发之后在合并提测了,而是每天集成提测,如果发现冲突当天就要解决。

持续集成即 Continuous integration(CI) 是一种软件开发实践,即团队开发成员经常集成他们的工作,每次集成都通过自动化的构建(包括编译,发布,自动化测试)来验证,从而尽快地发现集成错误,让团队能够更高效的开发软件。

持续集成要点:

  1. 统一的代码库(git)
  2. 统一的依赖包管理(nexus)
  3. 测试自动化
  4. 构建全自动化(maven)
  5. 部署自动化
  6. 可追踪的集成记录

2、jenkins 概述

jenkins 就是为了满足上述持续集成的要点而设计的一款工具,其主体框架采用JAVA开发,实质内部功能都是由各种插件实现,极大提高了系统的扩展性。其不仅可以满足JAVA系统的集成,也可以实现PHP等语言的集成发布。通过其pipeline 插件,用户可以随自己需要定制集成流程。

3、下载安装jenkins

下载:jenkins 支持Docker、yum、msi 等安装,在本次教程使用直接选择下载它对应的WAR包进行安装(2.204.2)。https://jenkins.io/download/

启动:下载完成之后直接可通过 java -jar 命令启动

java -jar jenkins.war --httpPort=8080

也可以将其放至到servlet容器(tomcat\jetty\jboss)中直接启动,无需过多的配置,一切插件化这是jenkins 比较优秀的设计。

配置:下载完成之后进入启动页(http://127.0.0.1:8080/) 会有一个 验证过程,验证码存储在 ${user_home}\.jenkins\secrets\initialAdminPassword 中,接着就是进入安装插件页,选择默认即可,这个过程稍长。

4、基础环境配置与常用插件下载

在集成的时候,jenkins 用到了 Maven 、Git  所以服务器中必须提前安装好这些环境,具体参照前面的git与maven 课程。

插件下载

更换源 ->系统管理->管理插件->高级 ->升级站点

把:http://updates.jenkins-ci.org/update-center.json

换成:http://mirror.esuni.jp/jenkins/updates/update-center.json

镜像源查询:http://mirrors.jenkins-ci.org/status.html

基本插件列表

插件名称

插件描述

Maven Integration

maven 管理插件

Deploy to container

容器部署插件

Pipeline

管道集成插件

Email Extension

邮件通知插件

SSH

用于ssh 通信

二、基于jenkins 实现可持续化集成

知识点:

  1. 持续化集成完成的目标
  2. 持续化集成配置
  3. 集成实现原理

1、 持续化集成完成的目标

需要到达的目标如下:

  1. 自动基于分支构建项目
  2. 构建好的项目自动部署至Tomcat容器
  3. 构建好的项目自动上传至Nexus 私服存档
  4. 保存构建历史记录,并可以下载历史记录

一、VIP课程:互联网工程专题 05-快速掌握Jenkins原理与核心功能的更多相关文章

  1. 一、VIP课程:互联网工程专题 04-Maven私服使用与插件开发

    第四课:Maven私服构建与插件开发.docx 一.maven 生命周期 知识点概要: 生命周期的概念与意义 maven 三大生命周期与其对应的phase(阶段) 生命周期与插件的关系 生命周期与默认 ...

  2. 一、VIP课程:互联网工程专题 02-Git服务搭建与版本分支管理

    第二课:搭建企业私有Git服务.docx 课程概要: GIT远程通信协议详解 基于gogs 搭建WEB管理服务 一.GIT服务器搭建方式 上一节课我们讲过GIT是一个分布式版本管理系统,既然是分布那么 ...

  3. 一、VIP课程:互联网工程专题 03-Maven基本概念与核心配置

    概要: maven 基本概念 maven 核心配置 一.maven  安装与核心概念 概要: maven 安装 maven 编译(compile) 执行测试用例(test) maven 打包 mave ...

  4. 一、VIP课程:互联网工程专题 01-Git基本概念与核心命令掌握

    第一课:Git基本概念与核心命令掌握.docx 课程概要: GIT 体系概述 GIT 核心命令使用 GIT 底层原理 一.GIT体系概述 1.使用方式区别 从本地把文件推送远程服务,SVN只需要com ...

  5. 图灵,咕泡,鲁班学院--Java高级架构师-互联网企业级实战VIP课程(价值6380)

    课程介绍:        讲课内容涉及Java互联网技术工程框架.应用框架.        性能调优 (Tomcat Nginx JVM)         分布式框架(并发编程 Zookeeper N ...

  6. 最新咕咆+鲁班+图灵+享学+蚂蚁+硅谷+源码 Java架构师资料《Java架构师VIP课程》

    最新的Java架构师完整资料,完整视频+源码+文档. 每一套都是一百多个G的资料,无密. JAVA架构师全套课程 咕泡学院互联网架构师第一期 咕泡学院互联网架构师第二期 咕泡学院互联网架构师第三期 博 ...

  7. 图灵学院java架构师vip课程第二期 完整版课程下载 无加密

    部分目录2020年新图灵学院Java二期架构师教程下载[课程目录]├──一.VIP课程:互联网工程专题├──二.VIP课程:源码框架专题├──三.VIP课程:并发编程专题├──四.VIP课程:性能调优 ...

  8. Spring框架的IOC核心功能快速入门

    2. 步骤一:下载Spring框架的开发包 * 官网:http://spring.io/ * 下载地址:http://repo.springsource.org/libs-release-local/ ...

  9. 【java框架】MyBatis-Plus(1)--MyBatis-Plus快速上手开发及核心功能体验

    1.MyBatis-Plus入门开发及配置 1.1.MyBatis-Plus简介 MyBatis-Plus(简称 MP)是一个 MyBatis的增强工具,在 MyBatis 的基础上只做增强不做改变, ...

随机推荐

  1. Memcached 最新版本发布,不再仅仅是个内存缓存了

    导读 Memcached 1.5.18和之后版本可以在服务重启时恢复内存缓存.新版本还通过DAX文件系统挂载来实现缓存持久性功能. 可以通过在启动选项使用该功能: -e /tmpfs_mount/me ...

  2. window和document的区别理解,bom和dom的区别理解

    Window对象: 是整个BOM的核心,所有对象和集合都以某种方式回接到window对象.Window对象表示整个浏览器窗口,但不必表示其中包含的内容. Document对象: 实际上是window对 ...

  3. oracle随机生成时间

    Julian Date定义 Julian Date:有效的日期范围是从公元前4713年1月1日到公元9999年12月31日.儒略日(julian date)是自公元前4713年1月1日中午12时起经过 ...

  4. Day3-K-Can you solve this equation? HDU2199

    Now,given the equation 8*x^4 + 7*x^3 + 2*x^2 + 3*x + 6 == Y,can you find its solution between 0 and ...

  5. sklearn学习笔记(1)--make_blobs函数及相应参数简介

    make_blobs方法: sklearn.datasets.make_blobs(n_samples=100,n_features=2,centers=3, cluster_std=1.0,cent ...

  6. 关于python中format占位符中的 {!} 参数

    在看celery的时候,发现里面有这么一句 print('Request: {0!r}'.format(self.request)) 关于里面的{0!r}是什么意思翻了一下文档. 文档里是这么描述的 ...

  7. mysql5.7.26安装

    h https://www.cnblogs.com/zgqbky/p/11699282.html 张国强(明了) tar -xf mysql-5.7.26-1.el7.x86_64.rpm-bundl ...

  8. Ubuntu基于Apache为自己的网站开启HTTPS

    暂时放这里链接,之后整理 https://www.deanhan.cn/ubuntu-apache-https.html

  9. postgres 删除外部表

    drop external table if exists tableName;

  10. Linux ---- 查看当前TCP连接数

    一.查看哪些IP连接本机 netstat -an 二.查看TCP连接数 1)统计80端口连接数netstat -nat|grep -i "80"|wc -l 2)统计httpd协议 ...