关于maven管理的springboot项目在idea上如何打包部署到linux服务器上。

3 篇文章 0 订阅
1 篇文章 0 订阅

关于maven管理的springboot项目在idea上如何打包部署到linux服务器上。这里写自定义目录标题

先说一下我的项目环境和部署环境。

1.项目:springboot + vue mysql数据库。
2.部署环境:liunx系统 centos7.

第一种:以jar包的方式运行。

1.linux 系统系配置jdk
	jdk安装位置:/var/tmp(我的安装位置)
	安装过程:将安装包放到文件下,通过 -tar -zxvf jdk1.8  命令解压。再进入 /etc目		  录下,通过vi profile命令编辑profile文件,修改环境变量(修改教程:https://www.cnblogs.com/jiu0821/p/7672395.html)。 

2.Tomcat安装:
Tomcat 安装位置:/var/tmp(我的安装位置)
安装过程:将安装包放到文件下,通过 -tar -zxvf tomcat8 命令解压。
项目部署:
3.后端:将项目后端打成jar包,(后端项目打包,只需要打用到那个服务项目包即可,因为在打包的时候idea默认认为一个个微服务是独立的项目,会自动加入依赖。)放入linux系统的 /var/tmp 文件下,通过 chmod 777 file 给文件赋运行权限。再修改shell脚本,通过 vi robotcenter.sh 编辑脚本。再通过 ./robotcenter.sh start 运行脚本。项目后端启动成功。
4. 前端:vue打包命令(进入前段目录下,npm run build)将vue项目打包文件放到tomcat的webapps下面。在tomcat/bin 目录下 ./startup.sh启动。前端项目启动。

至此项目以jar包的方式部署在linux系统下就完成了。

以war包的方式部署在Linux服务下。

  1. 因为我们项目部署的环境,只暴露了一个端口给我们。因为我们的项目是前后端分离。前端和后端的端口不一样。在内网的情况下,前端和后端的地址都能访问到。但是后来客户给了我们一个外网地址,并且只暴露了一个端口。所以在外网访问时,就会只能访问一个端口,前端或者后端。(后端springboot项目相当于内置了一个tomcat,前端再一个tomcat。改成一样的接口。端口冲突了 )。
    所以我知道的有两种解决方案:一种是下载nginx,采用反向代理,将后端路径代理成我可以访问的路径。二是将项目全部打成war包放到同一个tomcat下。 因为第一种客户服务器下,没有nginx环境,(gcc rpc 什么的方正很麻烦)。所以我是打成war包的方式解决。

1.后端项目打包
修改需要打包的服务项目的pom文件。将
war 打包方式jar 改成war。
再加入:


org.springframework.boot
spring-boot-starter-tomcat


provided
(作用:移除嵌入式tomcat插件)

javax.servlet
javax.servlet-api
3.1.0
provided

(这个和项目有关,自己查一下。)

        <!--部署项目-->
     <plugin>
             <groupId>org.apache.maven.plugins</groupId>
             <artifactId>maven-war-plugin</artifactId>
             <version>2.6</version>
             <configuration>
                 <failOnMissingWebXml>false</failOnMissingWebXml>
             </configuration>
     </plugin>

( ;如果想在没有web.xml文件的情况下构建WAR,请设置为false。)

然后在clear ,package一下。打包完成。然后将后端代码放到服务器下的tomcat下的webapps下。
2.前端打包
前端打包方式跟jar包部署的时候一毛一样。打包完成后放到tomcat 的webapps/root 下。然后修改 一下前端前端访问后端的路劲,注意二级路径名要跟后端的打包的包名一毛一样。
3. 进入,tomcat/bin下 ./starup.sh 启动tomcat 。在打入 cd …/logs 进入日志目录 tail -f catalina.out 查看日志。
4. 成功!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值