一、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:
代码语言:javascript复制 Jenkins-->110.43.204.225
SVN-->43.143.195.160
WEB-->182.92.209.212
需要用到的软件
本文基于jdk1.8进行构建:
代码语言:javascript复制Jenkins(2.346.1)、JDK、Maven、Tomcat、SVN
软件打包到以下地址了:
链接: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"/>
如何测试新建的用户?
访问: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/
代码语言:javascript复制中文语言包: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)
解决安装完成中文语言包,部分中文的问题:
代码语言:javascript复制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切换为中文。
设置本机的JDK、Maven地址
系统管理->全局工具配置
保存即可。