Linux基于Jenkins自动打包并部署Tomcat环境过程

 更新时间:2026年05月29日 15:01:10   作者:Cat_Rocky  
传统网站部署流程及Jenkins自动部署详解,涵盖需求分析、原型设计、开发代码等上线步骤,介绍Jenkins持续集成与部署流程,简化运维工作,提高部署效率

传统网站部署的流程

在运维过程中,网站部署是运维的工作之一。传统的网站部署的流程大致分为:需求分析-->原型设计-->开发代码-->提交代码-->内网部署-->内网测试-->确认上线-->备份数据-->外网更新-->外网测试-->发布完成。

如果在内网测试时发现代码有异常,返回代码开发人员名字,调整代码;如果在外网测试时发现外网部署的代码有异常,可以及时进行网站回滚。

传统代码上线的过程

开发人员发起代码上线的需求(邮件中包含开发做好的WAR包)-->运维人员连接线上负载调度器(Nginx)--> 隔离一组服务器(Tomcat)--> 连接服务器(Tomcat)--> 备份旧代码(tar打包)--> 删除旧代码目录 --> 上传新的WAR包 --> 外网测试 --> 测试不通过则通过备份回滚代码 --> 测试通过则利用rsync的脚本推送代码到其他服务器--> 统一外网测试 -->连接调度器恢复隔离机制 --> 隔离另一组服务器实施上线步骤 --> 上线完成。

目前主流网站部署的流程

目前主流网站部署方法:通过 Hudson/Jenkins 工具平台实现全自动部署+测试,是一个可扩展的持续集成引擎,属于开源软件项目,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能。

Jenkins 非常易于安装和配置,简单易用。

  • 开发人员:写好代码,不需要自己进行源码编译、打包等工作,直接将代码分支存放在 SVN、Git 仓库即可。
  • 运维人员:减轻人工干预的错误率,同时解放运维人员繁杂的上传代码、手动备份、更新等操作。
  • 测试人员:可以通过 Jenkins 进行简单的代码及网站测试。

Jenkins 的工作原理是先将源代码从 SVN/Git 版本控制系统中拷贝一份到本地,然后根据设置的脚本调用Maven进行 build(构建)。

整个系统的关键就是 build 脚本,build 脚本告诉Jenkins 在一次集成中需要执行的任务。

配置实验

配置git主机

  • 安装:yum -y install git
  • 创建用户:useradd git
  • 设置密码:echo "123" | passwd --stdin git
  • 创建本地仓库object2
su - git
mkdir object2.git
cd object2.git
git --bare init
exit

在tomcat节点

  • 下载:yum install -y tomcat
  • 启动:systemctl start tomcat.service
  • 查看:netstat -antpu | grep 8080

192.168.11.128:8080

随意点击一个服务,按提示操作

编译文件:vim /etc/tomcat/tomcat-users.xml 添加:用户名和密码可以更改

<role rolename="manager-gui"/>
<user username="tomcat" password="s3cret" roles="manager-gui"/>

编译文件:vim /var/lib/tomcat/webapps/manager/META-INF/context.xml添加网段

备份文件:cd /var/lib/tomcat/webapps/

删除目录:rm -rf host-manager/ manager/ ROOT/

下载:yum install -y maven 用于打包java网页(用豆包创建网页)

执行:mvn clean package

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Linux下tomcat的80端口被占用的解决方法

    Linux下tomcat的80端口被占用的解决方法

    在Linux系统中部署Tomcat时,经常会遇到80端口被占用的问题,这是因为80端口通常默认用于HTTP服务,而许多系统或服务已经占用了这个端口,所以本文将介绍如何检查80端口是否被占用,以及如何解决这个问题,需要的朋友可以参考下
    2025-07-07
  • Centos7配置与安装DNS服务器全过程

    Centos7配置与安装DNS服务器全过程

    这篇文章主要介绍了Centos7配置与安装DNS服务器全过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2025-09-09
  • Linux中使用命令more,less,cat查看文件内容

    Linux中使用命令more,less,cat查看文件内容

    今天小编就为大家分享一篇关于Linux中使用命令more,less,cat查看文件内容,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-03-03
  • Linux环境下python2.7.6升级python3.5.2

    Linux环境下python2.7.6升级python3.5.2

    本篇文章主要介绍了centos7下python2.7.5升级到3.5.2,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-04-04
  • Ubuntu Apahce2.4下无法访问JS目录的问题解决

    Ubuntu Apahce2.4下无法访问JS目录的问题解决

    这篇文章主要给大家介绍了如何解决Ubuntu Apahce2.4下无法访问JS目录的问题,文中介绍的非常详细,相信对大家具有一定的参考价值,需要的朋友们下面来一起看看吧。
    2017-03-03
  • 详解git中配置的.gitignore不生效的解决办法

    详解git中配置的.gitignore不生效的解决办法

    这篇文章主要介绍了详解git中配置的.gitignore不生效的解决办法的相关资料,这里提供解决办法希望能帮助到大家,需要的朋友可以参考下
    2017-09-09
  • Ubuntu Server 14.04升级Ubuntu Server 16.04

    Ubuntu Server 14.04升级Ubuntu Server 16.04

    这篇文章主要介绍了 Ubuntu Server 14.04升级Ubuntu Server 16.04,具有一定的参考价值,感兴趣的小伙伴们可以参考一下。
    2016-12-12
  • linux之rpm2cpio命令用法解读

    linux之rpm2cpio命令用法解读

    rpm2cpio用于将RPM包转换为cpio格式,便于提取文件,常用参数-i、-d、-m、-v,示例展示转换及提取操作,总结:该工具简化RPM内容处理,配合cpio可灵活管理软件包文件
    2025-09-09
  • 如何修改CentOS服务器时间为北京时间

    如何修改CentOS服务器时间为北京时间

    这篇文章主要介绍了修改CentOS服务器时间为北京时间的相关知识,非常不错,具有一定的参考借鉴价值 ,需要的朋友可以参考下
    2018-10-10
  • Linux环境下查看日志文件命令详解

    Linux环境下查看日志文件命令详解

    大家好,本篇文章主要讲的是Linux环境下查看日志文件命令详解,感兴趣的同学赶快来看一看吧,对你有帮助的话记得收藏一下,方便下次浏览
    2021-12-12

最新评论