Jenkins+MVN+Tomcat+CentOS实现自动化部署

运维最大的悲剧就是熬夜跟着开发 进行线上部署调试bug,这是我最不想看到的,不过最近老大研究除了一个很好的东西,虽然是烂大街的东西,但是解决了我最容易加班的事情,下面就来说说搭建的具体流程,与大家共勉:

1.系统环境介绍

# 系统版本
root@dubboadmin:~
# cat /etc/issue
Ubuntu 14.04.3 LTS \n \l
#jdk版本,jdk版本和tomcat 的版本一定要按照教程使用,因为这东西对版本要求挺严格的,不然起不来
root@dubboadmin:~
# Java -version
java version 
"1.7.0_21"
Java(TM) SE Runtime Environment (build 1.7.0_21-b11)
Java HotSpot(TM) 64-Bit Server VM (build 23.21-b01, mixed mode)
# 系统jdk是上面那个版本1.7.0_21,但是我们我们jenkins所在的tomcat并非1.7,使用的是1.8,具体修改如下
root@dubboadmin:
/opt/tomcat-7
.0.77
/jenkins-web/bin
# pwd
/opt/tomcat-7
.0.77
/jenkins-web/bin
root@dubboadmin:
/opt/tomcat-7
.0.77
/jenkins-web/bin
# vim setclasspath.sh 
# 在这个文件的开头加上这两句话
JRE_HOME=
/opt/jdk1
.8.0_144
/jre
JAVA_HOME=
/opt/jdk1
.8.0_144/
# tomcat版本
root@dubboadmin:
/opt/tomcat-7
.0.77
/jenkins-web/bin
# ./version.sh 
Using CATALINA_BASE:   
/opt/tomcat-7
.0.77
/jenkins-web
Using CATALINA_HOME:   
/opt/tomcat-7
.0.77
/jenkins-web
Using CATALINA_TMPDIR: 
/opt/tomcat-7
.0.77
/jenkins-web/temp
Using JRE_HOME:       
/opt/jdk1
.8.0_144
/jre
Server version: Apache Tomcat
/6
.0.1
Server built:   @VERSION_BUILT@
Server number:  @VERSION_NUMBER@
OS Name:        Linux
OS Version:     3.19.0-25-generic
Architecture:   amd64
JVM Version:    1.8.0_144-b01
JVM Vendor:     Oracle Corporation
# 使用的是maven环境,所以需要下载jar,我们的jar包都放在了artifactory,需要的jar都去那里下载
所以要确保这个机器和artifactory在物理连接上是通的,修改hosts
192.168.1.191   artifactory.
test
.com

2.安装maven

 下载地址在博客后文有附件

  安装很简单,找个地方解决过来之后,修改环境变量

root@dubboadmin:
/opt
# cat /etc/profile
   
........    ........
export 
M2_HOME=
/opt/maven-je/maven
export 
PATH=$M2_HOME
/bin
:$PATH
# 执行source 使文件立即生效
root@dubboadmin:
/opt
# source  /etc/profile
# 使用mv tab 可以看到maven的执行命令
root@dubboadmin:
/opt
# mv
mv           
mvn           mvn.bat       mvnDebug      mvnDebug.bat

3.安装svn工具

apt-get 
install 
subversion

4.安装jenkins

去jenkins官网下载相应版本,小编使用的是vjenkins2.79

官网地址:https://jenkins.io/download/

把下载好的war包放到tomcat下就可以了,然后启动tomcat,在浏览器里面访问就可以了

5.安装jenkins插件

Maven Integration plugin
Subversion Plug-in
Publish Over SSH

安装过程如下:

依次点击:系统管理—管理插件—可选插件—输入想要安装的插件—勾选搜索后的想要安装的插件—-点击直接安装

注意:同时会有其他依赖的插件安装,若有安装失败的就去http://updates.jenkins-ci.org/download/plugins下载后在“高级”那里上传上来即可;

 

所有插件安装完成后重启jenkins服务,直接重启tomcat即可

6.配置

6.1 配置jdk和maven环境

依次点击:系统管理—Global Tool Configuration—如实填写你的maven和jdk的路径

6.2添加主机

  a.配置jenkins和需要部署项目的机器之间互信

首先需要配置Jenkins所在Linux到部署Linux的免密登录,假设两者ip分别为192.168.1.111和112,则在111上执行命令:

(命令1有交互按自己的需求填写,简单的就全部直接回车)

(命令2需要输入112的root密码)

# ssh-keygen -t rsa
# ssh-copy-id -i ~/.ssh/id_rsa.pub [email protected]

   b.添加需要部署项目的主机

在最下面输入对方的主机ip、用户、以及目录(这个目录是要把代码传到那个目录下的目录)

点击构建状态,可以看构建日志

 

 

说说那几个路径的区别:

至此,jenkins部署全部结束.

文章来源网络,作者:管理,如若转载,请注明出处:https://shuyeidc.com/wp/220881.html<

(0)
管理的头像管理
上一篇2025-04-14 18:52
下一篇 2025-04-14 18:53

相关推荐

  • 云服务器和云虚拟主机怎么选?云服务器和虚拟主机区别

    云服务器适合业务增长快、需弹性扩展的场景,而云虚拟主机适合预算有限、技术门槛低的小型静态网站或测试环境,二者核心区别在于资源独享性与运维复杂度,核心差异解析:从底层架构到使用体验很多人容易混淆这两者,觉得它们都是“买空间建站”,它们的底层逻辑完全不同,云服务器(ECS)就像是你租了一整栋别墅,水电网络独立,你想……

    2026-06-29
    0
  • 赣州智慧旅游招聘是真的吗?赣州旅游人才招聘信息

    中级岗位(3-5年经验)月薪范围通常在6000-10000元,这类岗位需要独立负责项目模块,如独立运营一个抖音账号,或维护一个景区小程序的功能迭代,具备成功案例的候选人议价能力较强,高级岗位(5年以上经验)月薪范围通常在10000-20000元,部分核心管理岗可达更高,这类人才需要具备战略规划能力,如制定整个景……

    2026-06-29
    0
  • 赣州智能物联网车位锁如何管理?智能车位锁管理系统多少钱

    赣州智能物联网车位锁管理的核心在于通过云端平台实现远程控锁、状态实时监控及自动计费,彻底解决传统车位“被占难管”与“找位难”的痛点,在赣州这样的城市,随着机动车保有量的持续增长,老旧小区、商业综合体以及私人固定车位的资源矛盾日益凸显,传统的机械地锁或简易遥控锁,不仅操作繁琐,更无法实现数据化管理,引入智能物联网……

    2026-06-29
    0
  • 赣州智能消防栓好用吗,智能消防栓多少钱一个

    赣州智能消防栓通过物联网技术实现实时监测与远程报警,能显著降低火灾响应时间并提升城市消防安全管理水平,是目前智慧城市建设中不可或缺的基础设施,赣州智能消防栓的核心价值与应用场景传统消防栓往往存在“看不见、摸不着、用不了”的痛点,在赣州这样地形复杂、老城区与新城区并存的区域,传统设施的管理难度极大,智能消防栓的出……

    2026-06-29
    0
  • 云服务器和物理机到底有啥区别?

    云服务器本质上是虚拟化资源池中的弹性实例,而传统物理服务器是独占的硬件实体,前者胜在弹性与运维便捷,后者强在物理隔离与性能稳定,具体选择取决于业务对成本、扩展性及安全合规的权衡,很多人初次接触服务器时,容易把“云服务器”和“传统物理服务器”混为一谈,觉得它们都是用来跑网站或存数据的盒子,这两者的底层逻辑完全不同……

    2026-06-29
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注