Jenkins+Maven+Gitlab+Tomcat自动化构建打包+部署

目录

环境准备

导入项目包

配置jenkins

构建项目

配置项目上线

修改项目代码测试


环境准备

本实操项目环境基于https://blog.csdn.net/Lzcsfg/article/details/140359830

首先在node01主机中操作,本次操作需要java8的版本,将之前安装的java17卸载

Java Downloads | Oraclehttps://www.oracle.com/java/technologies/downloads/?er=221886#java8

bash 复制代码
#卸载之前17版本
[root@node01 ~]# yum remove -y java
#下载jdk8
[root@node01 ~]# wget -O jdk-8u411.rpm https://download.oracle.com/otn/java/jdk/8u411-b09/43d62d619be4e416215729597d70b8ac/jdk-8u411-linux-x64.rpm?AuthParam=1720715155_db3de5003585c6f38ce0b8e87c922e4b
[root@node01 ~]# yum install -y jdk-8u411.rpm

[root@node01 ~]# java -version
java version "1.8.0_411"
Java(TM) SE Runtime Environment (build 1.8.0_411-b09)
Java HotSpot(TM) 64-Bit Server VM (build 25.411-b09, mixed mode)

Index of apache-local/tomcathttps://mirrors.huaweicloud.com/apache/tomcat/

bash 复制代码
#下载tomcat8
[root@node01 ~]# wget https://mirrors.huaweicloud.com/apache/tomcat/tomcat-8/v8.5.100/bin/apache-tomcat-8.5.100.tar.gz
[root@node01 ~]# tar -zxvf apache-tomcat-8.5.100.tar.gz
[root@node01 ~]# mv apache-tomcat-8.5.100 /usr/local/tomcat

修改tomcat配置

bash 复制代码
[root@node01 ~]# vim /usr/local/tomcat/webapps/docs/META-INF/context.xml
bash 复制代码
[root@node01 ~]# vim /usr/local/tomcat/webapps/host-manager/META-INF/context.xml
bash 复制代码
[root@node01 ~]# vim /usr/local/tomcat/webapps/manager/META-INF/context.xml
bash 复制代码
[root@node01 ~]# vim /usr/local/tomcat/conf/tomcat-users.xml
  <role rolename="manager-gui"/>
  <role rolename="manager-script"/>
  <role rolename="admin-gui"/>
  <role rolename="admin-script"/>
  <user username="admin" password="123456" roles="tomcat,manager-gui,manager-script,admin-gui,admin-script"/>

记住这个用户名admin 密码123456 这里定义好了登录tomcat管理页面的账户

启动tomcat验证

bash 复制代码
[root@node01 ~]# /usr/local/tomcat/bin/startup.sh

导入项目包

来到gitlab服务主机的web页面,登录后导入项目

Git仓库URL

bash 复制代码
https://gitee.com/hyunze/easy-springmvc-maven

点击导入后等待一会即可完成

将jenkins服务主机的公钥复制,到gitlab平台里

bash 复制代码
[root@jenkins .ssh]# cat /root/.ssh/id_rsa.pub 
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQCxUu9J87S1IP7fKfcjbQGJe4KNpMbVz8NfRXibyzLprGwkdPcLZL0nQGKfHiUKroO/yehztlyya/eziwpJposnzkTcY2qbUDQHNoFaY0h1sRhvtJGjdZcwvgi0QHdbv4dp/YxthMx8+UtXmXaDyBrG1ezjcON2pRSnWpUSVL9HatbC6lnhn2q5U2U790ggt2JqjeCGpRQBgusS6Xq5D+HXZfPFvCJK71N3OEBqyuf5jysLMLdRQtawck/nCeU8sTQbHVl85+oPZ5FjuX++GBqTdCdZFcWMx/8qTNaux2ctJmW9Arx2h3SgESwIEsxE3+DhyoE+88FyNdtE752Ms0JWypNGW+XVoFVyFFd8luHTQSHKmN2kMZs1Qq+8XWZHz1LgD5fOvsiGyw2ei/dI1HrhZzyVG+YpkZFxAf3GyIC8YWeu7tvcbE8z83jI9XQYUSAWg6UE4ifkVy+7QB/Su0RK2Re3hIj7tvgYxV0WOVe0/+ZB/up576xnyemeWx2LBIc= root@jenkins

配置jenkins

来到jenkins主机的web页面,确保下载了这两个插件,没有则下载

Maven Integration plugin

Deploy to container Plugin

来到jenkins主机下载部署jdk8的版本,因为本项目打包需要用到jdk8

bash 复制代码
[root@jenkins ~]# wget -O jdk-8u411.rpm https://download.oracle.com/otn/java/jdk/8u421-b09/d8aa705069af427f9b83e66b34f5e380/jdk-8u421-linux-x64.rpm?AuthParam=1721458472_cbb2875b7eee184c7878c44b44975d71
[root@jenkins ~]# yum install -y jdk-8u411.rpm

安装目录在/usr/lib/jvm/jdk-1.8.0_421-oracle-x64

maven和git也已经预装过了在之前的环境里。

现在来到jenkins的web页面,修改java配置

构建项目

在gitlab页面复制仓库的连接,粘贴进jenkins的配置里。

回到jenkins页面

在jenkins主机工作空间中查看war包

bash 复制代码
[root@jenkins maven-project]# ll /root/.jenkins/workspace/maven-project
total 44
-rw-r----- 1 root root 35181 Jul 12 05:50 LICENSE
-rw-r----- 1 root root    99 Jul 12 05:50 README.md
-rw-r----- 1 root root  3062 Jul 12 06:27 pom.xml
drwxr-x--- 3 root root    18 Jul 12 05:50 src
drwxr-x--- 7 root root   148 Jul 12 06:38 target

[root@jenkins maven-project]# ll target/
total 4680
drwxr-x--- 3 root root      20 Jul 12 06:32 classes
drwxr-x--- 4 root root      72 Jul 12 06:38 easy-springmvc-maven
-rw-r----- 1 root root 4788840 Jul 12 06:38 easy-springmvc-maven.war
drwxr-x--- 3 root root      25 Jul 12 06:06 generated-sources
drwxr-x--- 2 root root      28 Jul 12 06:38 maven-archiver
drwxr-x--- 3 root root      35 Jul 12 06:06 maven-status

这里面就已经有了打好的war包,就成功构建并打包了。

配置项目上线

来到jenkins的web页面,继续增加maven-project任务的配置

设置好后点立即构建,然后看到正确输出即可。

来到项目上线的主机,到tomcat管理页面查看

管理页面需要登录,安装时配置的tomcat的用户名和密码

这里就看到自动打包并上线的项目了。

这里使用的项目的用户名和密码,在其代理里定义的,用户名:admin 密码:admin输入后登录即可。

修改项目代码测试

来到gitlab用户页面使用管理员用户登录,进修修改代码,并提交测试

刷新即可看到更改后的文字

回到jenkins页面,点击立即构建

来到tomcat页面查看,此时可以看到登录页标题发生了改变,即完成了一次构建,自动拉取,打包,上线。

相关推荐
在努力的前端小白9 分钟前
Spring Boot 敏感词过滤组件实现:基于DFA算法的高效敏感词检测与替换
java·数据库·spring boot·文本处理·敏感词过滤·dfa算法·组件开发
一叶飘零_sweeeet2 小时前
从繁琐到优雅:Java Lambda 表达式全解析与实战指南
java·lambda·java8
艾伦~耶格尔3 小时前
【集合框架LinkedList底层添加元素机制】
java·开发语言·学习·面试
一只叫煤球的猫3 小时前
🕰 一个案例带你彻底搞懂延迟双删
java·后端·面试
最初的↘那颗心3 小时前
Flink Stream API 源码走读 - print()
java·大数据·hadoop·flink·实时计算
JH30734 小时前
Maven的三种项目打包方式——pom,jar,war的区别
java·maven·jar
带刺的坐椅5 小时前
轻量级流程编排框架,Solon Flow v3.5.0 发布
java·solon·workflow·flow·solon-flow
David爱编程5 小时前
线程调度策略详解:时间片轮转 vs 优先级机制,面试常考!
java·后端
阿冲Runner6 小时前
创建一个生产可用的线程池
java·后端
写bug写bug6 小时前
你真的会用枚举吗
java·后端·设计模式