git + tomcat + maven + jenkins 实现自动化部署jar包和war包详细教

这篇博客介绍了如何使用 Git、Tomcat、Maven 和 Jenkins 实现 Java 项目的自动化部署,包括配置 Jenkins、Git 私钥、构建后操作以及 war 包和 jar 包的部署区别。通过这一流程,可以提高部署效率并减少人为错误。
摘要由CSDN通过智能技术生成

Git + Tomcat + Maven + Jenkins 实现自动化部署 Jar 包和 War 包详细教程 ---亲测

前言

首先什么是自动化部署呢, 先来一张图在这里插入图片描述

之前我们可能要在本地用 maven 命令等打成 jar 包或者是 war 包 , 然后将打包好的包放到服务器的 tomcat 上, 这些过程都是手动的, 如果一个项目需要频繁的修改测试部署, 这时候来一个自动化部署多么的炫酷, jenkins 就帮我们做了这事 , 下面说一下核心的配置和步骤 ##

环境准备
  • Jenkins 2.228
  • Git 1.8.3.1
  • Maven 3.5.0
  • JDK 1.8
  • GitLab 12.0.2
  • tomcat 8.x
  • 两台服务器: 192.168.50.150 119.3.xxx.xxx

我们还需要在 jenkins 上配置 Git 的私钥, 不然代码屎拉不下来的,参考如下链接配置 SSH

这些工具的安装步骤就不详细的说了,百度上都有,也可以私信我

##

部署 jar 包核心配置
  1. 首先我们先在 Jenkins 上配置好一会所需要的服务器在这里插入图片描述进到系统设置,划到最下面在这里插入图片描述
  2. 配置工具在这里插入图片描述Maven在这里插入图片描述JDK在这里插入图片描述Git在这里插入图片描述Maven在这里插入图片描述
  3. 新建一个项目,进行配置,新建项目选择自由风格的就行, 就不做演示了, 建完项目进行配置在这里插入图片描述在这里插入图片描述

下面是核心,构建后的操作(如果选项卡中没有 send build artifacts over ssh,就去安装一下 SSH Build Agents 插件)在这里插入图片描述在这里插入图片描述Shell 脚本如下

#!/bin/shapp_dir=/opt/maven/jarstore/com/ywq/test/0.0.1-SNAPSHOTapp_file_path=$app_dir/test-0.0.1-SNAPSHOT.jarapp_path=/opt/jar/test.jarsource /etc/profileif [ -f $app_file_path ] ;then echo -- stop app    pidlist=`ps -ef | grep test| grep -v grep | awk '{print $2}'`    if [ "$pidlist" = "" ] ;then         echo "no app pid alive!"    else       echo "app Id list :$pidlist"       kill -9 $pidlist       echo "KILL $pidlist:"    fiecho -- 开始部署$app_path  if [ -f $app_path ] ;then        rm -f $app_path        echo -- 正在删除$app_pathfi     mv $app_file_path  $app_path    echo -- 开始启动$app_path    export JAVA_HOME=/opt/jdk1.8    nohup java -Xms1024m -Xmx1024m -jar $app_path > test.log &    echo -- 启动完成fi

这样就是配置好了,就可以实现 jar 包的自动化部署了

##

部署 war 包核心配置

部署 war 包和 jar 很相似, 只是在最后一步有差别,构建后的操作

部署 war 包就不用脚本了, 用 Deploy to container 插件(如果选项卡里没有,就去装一下)

在这里插入图片描述在这里插入图片描述如果说我们没有配置 tomcat 的管理账号密码, 就去 tomcat 下 conf 目录的 tomcat-users.xml 文件添加一下,内容如下(在 tomcat-uses 这个标签中)

<role rolename="tomcat"/><role rolename="role1"/><role rolename="manager-script"/><role rolename="manager-gui"/><role rolename="manager-status"/><role rolename="admin-gui"/><role rolename="admin-script"/><user username="tomcat_user" password="123456" roles="manager-gui,manager-script,tomcat,admin-gui,admin-script" />

其余步骤和上面一样, 这样就算配置成功了

总结

这一套自动化流程帮我们提高了很大的效率, 同时也避免的一些人为错误的发生。从无到有, 两天的时间, 也是翻阅了很多资料, 遇到了很多困难, 多去尝试!如有对本文或者安装的过程有异议或问题,欢迎讨论学习!

纸上得来终觉浅,绝知此事要躬行。

阅读全文: http://gitbook.cn/gitchat/activity/5eb2bb5a4061856c0ad65fad

您还可以下载 CSDN 旗下精品原创内容社区 GitChat App ,阅读更多 GitChat 专享技术内容哦。

FtooAtPSkEJwnW-9xkCLqSTRpBKX

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值