Jenkins简介及安装配置详解:开启持续集成之旅

一、Jenkins介绍

Jenkins是一个开源的、用Java编写的持续集成和持续交付(CI/CD)工具。它提供了一种简单易用的方式来自动化构建、测试和部署软件。Jenkins的主要目标是帮助开发团队加快软件开发过程,提高软件质量,并通过自动化流程减少手动操作和重复性工作。

Jenkins具有以下特点和优势:

  • 持续集成:Jenkins支持通过持续集成管道(Pipeline)来自动化构建、测试和部署。它能够检测代码的变更,并触发相应的构建和测试过程,确保及时地发现和解决问题。
  • 插件生态系统:Jenkins拥有丰富的插件生态系统,可以扩展各种功能和集成其他工具。无论是构建工具、版本控制系统、测试框架还是部署平台,都可以通过插件进行集成,满足不同项目的需求。
  • 可扩展性:Jenkins具有良好的可扩展性,可以根据项目的需求进行定制和配置。它支持并行化构建和分布式构建,可以在多个节点上执行任务,提高构建的效率和并发能力。
  • 多平台支持:Jenkins可以运行在各种操作系统上,包括Windows、Linux和Mac OS等。它也可以与各种开发工具和平台无缝集成,适用于不同的开发环境。
  • 可视化界面:Jenkins提供了直观的用户界面,方便用户进行配置、监控和管理。用户可以通过Web界面轻松地创建和管理任务,查看构建结果和日志等信息

1.1 持续集成

持续集成( Continuous integration , 简称 CI )指的是,频繁地(一天多次)将代码集成到主干。 持续集成的目的,就是让产品可以快速迭代,同时还能保持高质量。它的核心措施是,代码集成到主干 之前,必须通过自动化测试。只要有一个测试用例失败,就不能集成。

1.2 Jenkins持续集成的过程(传统方式与自动化部署)

传统部署:

自动化部署:

搭建上述持续集成环境可以把整个构建、部署过程自动化,很大程度上减轻工作量。对于程序员的日常开发来说不会造成任何额外负担——自己把代码提交上去之后,服务器上运行的马上就是最新版本,一切都发生在无形中。

二、环境搭建

1、准备工作

服务器准备:

需要准备三台服务器,分别是:

  • SVN代码托管服务器
  • Jenkins服务器
  • WEB发布服务器(Tomcat)

下面是我演示用的三台服务器的IP:

  Jenkins-->110.43.204.225

  SVN-->43.143.195.160

  WEB-->182.92.209.212
 
  • 1
  • 2
  • 3
  • 4
  • 5

需要用到的软件

本文基于jdk1.8进行构建:

Jenkins(2.346.1)、JDK、Maven、Tomcat、SVN
 
  • 1

软件打包到以下地址了:

链接:https://pan.baidu.com/s/1CD7IXZ_E-RNTsXEl6L7SRw?pwd=8mz8

软件的安装

软件的安装:在哪台服务器装什么软件就不演示了,到时会说明需要装什么,按照下面教程进行安装即可:

JDK:https://blog.csdn.net/qq_54796785/article/details/125206684

Maven:https://blog.csdn.net/qq_54796785/article/details/125846934

SVN:可网上参考

Tomcat:可网上参考

2、WEB发布服务器环境搭建

需要安装:JDK和Tomcat
还需要配置Tomcat用户,是为了后面通过Jenkins发布war包到此服务器Tomcat上面进行部署。

$TOMCAT_HOME/conf/tomcat-users.xml,最下面添加以下内容:表示新建一个用户tomcat,密码123456

<role rolename="tomcat"/>
<role rolename="role1"/>
<role rolename="manager-status"/>
<role rolename="manager-script"/>
<role rolename="manager-gui"/>
<role rolename="admin-script"/>
<role rolename="admin-gui"/>
<user username="tomcat" password="123456" roles="manager-gui,manager-script,tomcat,admin-gui,admin-script"/>
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

如何测试新建的用户?

访问:182.92.209.212:8080

这时候大概率是出现了403,需要在$TOMCAT_HOME//webapps/manager/META-INF/context.xml,注释以下代码即可

3、SVN服务器环境搭建

直接看上面的安装教程即可,不需要其他环境

4、Jenkins环境搭建

前置条件,需要安装:JDK、Maven、Tomcat
然后修改下tomcat端口为80(非必须),再将jenkins.war包放在tomcat的webapps目录下,最后启动tomcat


访问以下地址:http://110.43.204.225/jenkins/

并复制秘钥到下面: cat /root/.jenkins/secrets/initialAdminPassword

然后就是耐心等待插件的安装:

这边我就创建一个账户:admin 123456

设置国内镜像源

进入 Manage Jenkins -> Manage Plugin -> Advanced 最下面有 Update Site,设置为: http://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json

然后重启Jenkins:ip+端口/jenkins/restart

安装所需插件:选择插件,然后点击Install without restart安装即可

附插件市场地址:https://plugins.jenkins.io/

中文语言包:Locale(180.v207501dff9b_a_)
SVN插件:Subversion(2.16.0)
部署web应用:Deploy to container(1.16)
Maven插件:Maven IntegrationVersion(3.20)
SSH上传插件:Publish Over SSH(1.24)
 
  • 1
  • 2
  • 3
  • 4
  • 5

解决安装完成中文语言包,部分中文的问题:

1、安装插件(locale、Localization);
2、在System Configuration--Configure System下,找到Locale输入Default Language为en_US并勾选“Ignore browser preference and force this language to all users“
3、restart重启Jenkins:http://域名/restart;
4、再次语言设定为zh_CN,Jenkins切换为中文。
 
  • 1
  • 2
  • 3
  • 4

设置本机的JDK、Maven地址

Jenkins简介及安装配置详解:开启持续集成之旅的更多相关文章

  1. ubuntu14.04 server ftp 服务安装配置详解

    ubuntu14.04 server ftp 服务安装配置详解 cheungmine 2016-01-27 http://wiki.ubuntu.com.cn/Vsftpd 0 安装好vsftpd服务 ...

  2. Eclipse IDE for C/C++ Developers安装配置详解

    Eclipse IDE for C/C++ Developers安装配置详解(转) 转自:http://hi.baidu.com/ltb6w/item/986532efd712460f570f1ddc ...

  3. Cloudera CDH 、Impala本地通过Parcel安装配置详解及什么是Parcel

    本文引用自:Cloudera CDH .Impala本地通过Parcel安装配置详解及什么是Parcelhttp://www.aboutyun.com/forum.php?mod=viewthread ...

  4. lvs keepalived 安装配置详解【转】

    lvs keepalived 安装配置详解 张映 发表于 2012-06-20 分类目录: 服务器相关 前段时间看了一篇文章,lvs做负载均衡根F5差不多,说实话不怎么相信,因为F5没玩过,也无法比较 ...

  5. JDK10安装配置详解

    JDK10安装配置详解 1. 下载jdk10 1.1 官网下载jdk7的软件包:        地址:http://www.oracle.com/technetwork/java/javase/dow ...

  6. (转)python中调用R语言通过rpy2 进行交互安装配置详解

    python中调用R语言通过rpy2 进行交互安装配置详解(R_USER.R_HOME配置) 2018年11月08日 10:00:11 luqin_ 阅读数:753   python中调用R语言通过r ...

  7. (转)使用LVS实现负载均衡原理及安装配置详解

    使用LVS实现负载均衡原理及安装配置详解 原文:https://www.cnblogs.com/liwei0526vip/p/6370103.html

  8. redis cluster 集群 安装 配置 详解

    redis cluster 集群 安装 配置 详解 张映 发表于 2015-05-01 分类目录: nosql 标签:cluster, redis, 安装, 配置, 集群 Redis 集群是一个提供在 ...

  9. hapRroxy 安装配置详解

    简介 HAProxy提供高可用性.负载均衡以及基于TCP和HTTP应用的代理,支持虚拟主机,它是免费.快速并且可靠的一种解决方案. HAProxy特别适用于那些负载特大的web站点,这些站点通常又需要 ...

  10. samba 4.7.16 安装配置详解

    系统:Centos 7.4 x64位 服务版本:samba-4.7.1.samba-client-4.7 Samba 简介 Samba 是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服 ...

随机推荐

  1. kafka和zookeeper安装

    一.Kafka简介 Kafka 被称为下一代分布式消息系统,是非营利性组织ASF(Apache Software Foundation,简称为ASF)基金会中的一个开源项目,比如HTTP Server ...

  2. QT打开摄像头(自定义取景器)

    自建取景器 .h #ifndef CAMERASURFACE_H #define CAMERASURFACE_H #include<QAbstractVideoSurface> #incl ...

  3. P1844 阅览室

    此题现有题解较为冗长,因此前来贡献一发最短解. 首先正常的思路是直接按题意模拟.即: 枚举当前时刻 \(T\) 对于每个人,标记该时刻想要拿到的书 根据题目的要求判断冲突情况 对书进行分配 实现起来复 ...

  4. ElectronReactAdmin跨平台管理系统|electron27+react18后台模板EXE

    基于electron27+react18+arco电脑端后台管理程序EXE实例ElectronRAdmin. electron27-react18-admin 基于跨平台技术Electron集成Vit ...

  5. [C++]P3379 LCA 最近公共祖先

    最近公共祖先 LCA 倍增写法 LCA的倍增主要由三个重要的过程组成 预处理lg数组 DFS求fa depth 倍增节点 观看以下内容前建议先把完整代码大致纵览一遍,有利于理解各个函数的意义 倍增思想 ...

  6. 25. 干货系列从零用Rust编写正反向代理,序列化之serde是如何工作的

    wmproxy wmproxy已用Rust实现http/https代理, socks5代理, 反向代理, 静态文件服务器,四层TCP/UDP转发,内网穿透,后续将实现websocket代理等,会将实现 ...

  7. 前端本地导出文件 导出txt sql (简版版的字符串案例)

    1.首页明确要导出的根据 一般有图片 excel  文字.针对不同的文件类型 配置不同的参数 2.知识点 Blob          URL.createObjectUrl new Blob( arr ...

  8. 《最新出炉》系列初窥篇-Python+Playwright自动化测试-30-处理日历时间控件-下篇

    1.简介 理想很丰满现实很骨感,在应用playwright实现web自动化时,经常会遇到处理日期控件点击问题,手工很简单,可以一个个点击日期控件选择需要的日期,但自动化执行过程中,完全复制手工这样的操 ...

  9. Educational Codeforces Round 104 (Rated for Div. 2) A~E题解

    写在前边 链接:Educational Codeforces Round 104 (Rated for Div. 2) A. Arena 链接:A题链接 题目大意: 给定一个长度为\(n\)的数组,表 ...

  10. 为什么 Django 后台管理系统那么“丑”?

    哈喽大家好,我是咸鱼 相信使用过 Django 的小伙伴都知道 Django 有一个默认的后台管理系统--Django Admin 它的 UI 很多年都没有发生过变化,现在看来显得有些"过时 ...