Jenkins部署jeesns (构建maven项目)

在这里插入图片描述
在这里插入图片描述

0 参考的maven项目地址:

https://gitee.com/alivv/helloworld?_from=gitee_search
git clone https://gitee.com/alivv/helloworld.git

1 搭建maven

#安装maven
tar xf apache-maven-3.3.9-bin.tar.gz
mv apache-maven-3.3.9 /usr/local/
ln -s /usr/local/apache-maven-3.3.9/ /usr/local/maven
/usr/local/maven/bin/mvn -v

#添加环境变量
vim /etc/profile
export PATH=/usr/local/apache-maven-3.3.9/bin/:$PATh
mvn -v

#测试打包
tar xf hello-world.tar.gz
cd hello-world
mvn package

在这里插入图片描述
里面就会有个jar包,可用于发布项目
在这里插入图片描述

mvn clean
#所以平常会先清除后打包
mvn clean package

在这里插入图片描述
在这里插入图片描述

2 创建maven私服nexus

如果不搭建私服,平常将maven仓库改成阿里云的maven仓库即可。 settings.xml
在这里插入图片描述

搭建maven私服nexus具体参考:https://www.cnblogs.com/knowledgesea/p/11190579.html

3 java项目(maven) jeesns

项目地址: https://gitee.com/zchuanzhao/jeesns
代码:git clone https://gitee.com/zchuanzhao/jeesns.git

tar xf jeesns.tar.gz
#jeesns项目内容如下图

在这里插入图片描述
此时将这些代码上传到gitlab 。

git init
git remote add origin git@192.168.26.137:test/maven.git
git add .
git commit -m "initial commit"
git push -u origin master

回到Jenkins,构建一个maven项目

在这里插入图片描述
General
在这里插入图片描述
源码管理
在这里插入图片描述
Build 。 这里其实就是类似于执行了 mvn clean package
在这里插入图片描述
处理报错:设置maven的位置(自定义的) , 全局工具配置 --> Maven --> 新增maven
在这里插入图片描述

立即构建

这里构建没问题的话,继续操作
在这里插入图片描述
在这里插入图片描述

构建设置 --> Post Steps设置
在这里插入图片描述
先移动原先webapps下东西到/opt ,然后将jeesns-web.war放到那边的webapps下
在这里插入图片描述
在这里插入图片描述
然后“立即构建”看效果
在这里插入图片描述

4 配置tomcat服务器和数据库

1、安装JDK (略)
2、安装tomcat
在这里插入图片描述

3、 安装数据库,26.137 --> mysql 5.7
下载后数据库文件为: jeesns\jeesns-web\database\jeesns.sql

#创建数据库和导入sql语句
mysql -uroot -p -e 'create database jeesns character set utf8 collate utf8_bin;'
mysql -uroot -p jeesns < /root/downloadFile/jeesns.sql	

=分割线
如果构建的时候报错ERROR: Failed to parse POMs,
java.io.IOException: Cannot run program “java” (in directory “/var/lib/jenkins/workspace/hellomaven”): error=2, No such file or directory
参考《Jenkins编译过程中出现ERROR_ Failed to parse POMs错误》https://www.cnblogs.com/douyi/p/11584513.html
在全局变量中添加java_home的环境变量即可。
在这里插入图片描述
在这里插入图片描述

安装插件Deploy to container Plugin

如果不用shell的scp传文件到tomcat下的webapps ,可使用Deploy to container Plugin 。
在这里插入图片描述
需要用到Tomcat的用户,所以修改tomcat以下配置,添加用户及权限:
如: apache-tomcat-7.0.105/webapps/manager/META-INF/context.xml
在这里插入图片描述
apache-tomcat-7.0.105/conf/tomcat-users.xml ,用户和密码都是:tomcat ,拥有的权限如标签的值。
(在 里面添加下面内容)

<role rolename="tomcat"/>
   <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" password="tomcat" roles="manager-gui,manager-script,tomcat,admin-gui,admin-script"/>

Jenkins配置tomcat用户凭证

类型为 username with password
在这里插入图片描述
构建后操作:
在这里插入图片描述
在这里插入图片描述

也可参考另一篇
https://www.cnblogs.com/forlive/p/12851198.html 《jenkins手动拉取java项目,根据tag,可以回滚》

END

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
Jenkins是一个开源的自动化部署工具,它可以帮助我们实现持续集成和自动化部署。而Docker是一种虚拟化技术,可以将应用程序及其依赖打包成一个可移植的容器,实现快速部署和可靠性。 在使用Jenkins进行自动化部署时,可以搭配使用Docker和Maven来创建一个完整的自动部署环境。首先,我们需要在Jenkins服务器上安装Docker,然后使用Docker创建一个虚拟容器,容器中包含了我们的项目代码和相关的环境依赖。 接下来,我们可以使用Maven来管理和构建我们的项目。在Jenkins上配置好Maven构建任务后,每当代码有更新或提交时,Jenkins会自动触发构建任务。在构建任务中,Jenkins会从代码仓库中拉取最新的代码,并使用Maven进行编译、测试、打包等操作。 当构建成功后,Jenkins可以将构建好的应用程序打包成一个Docker镜像,然后将镜像推送到Docker仓库。我们可以使用Docker的相关命令将该镜像部署到服务器上,即可实现自动化部署。在部署过程中,Docker会自动解析容器中的依赖,并创建一个虚拟环境来运行我们的应用程序。 通过使用Jenkins、Docker和Maven,我们可以实现一个完整的自动化部署环境。这样一来,我们只需要在代码有更新时提交到代码仓库,Jenkins就会自动触发构建任务,并将构建好的应用程序部署到服务器上。这大大提高了部署效率,减少了人工操作的错误和风险,同时也提高了系统的可靠性和稳定性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值