Jenkins+Maven+Gitlab+Tomcat自动化构建打包+部署
目录
环境准备
本实操项目环境基于https://blog.csdn.net/Lzcsfg/article/details/140359830
首先在node01主机中操作,本次操作需要java8的版本,将之前安装的java17卸载
Java Downloads | Oraclehttps://www.oracle.com/java/technologies/downloads/?er=221886#java8
#卸载之前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/
#下载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配置
[root@node01 ~]# vim /usr/local/tomcat/webapps/docs/META-INF/context.xml
[root@node01 ~]# vim /usr/local/tomcat/webapps/host-manager/META-INF/context.xml
[root@node01 ~]# vim /usr/local/tomcat/webapps/manager/META-INF/context.xml
[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验证
[root@node01 ~]# /usr/local/tomcat/bin/startup.sh
导入项目包
来到gitlab服务主机的web页面,登录后导入项目
Git仓库URL
https://gitee.com/hyunze/easy-springmvc-maven
点击导入后等待一会即可完成
将jenkins服务主机的公钥复制,到gitlab平台里
[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
[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包
[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页面查看,此时可以看到登录页标题发生了改变,即完成了一次构建,自动拉取,打包,上线。
原文地址:https://blog.csdn.net/Lzcsfg/article/details/140365017
免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!