这个springboot部署到linux,我之前一直都是在linux上使用tomcat部署,但是这样部署容易出现EL表达式无法使用导致项目报错;后来发现了一种更简单的方法,就是将项目打成war包,注册一个linux服务来启动,因为springboot是内置Tomcat的,所以并不需要外部的tomcat,进入正文吧,参考文章:https://www.cnblogs.com/cloud-dev/p/linux-xiao-bai-cheng-zhang-zhi-lu10SpringBoot-xian.html

我使用的ide是Eclipse,项目架构是springboot+springdatajpa,首先需要把你的项目打成war包,下图是pom文件配置,如果使用了Jsp一定要把<packaging>jar</packaging>改为<packaging>war</packagin>只截取了部分:springboot+Jsp部署linux 随笔 第1张

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。

下图是打包方式的选择:

springboot+Jsp部署linux 随笔 第2张

接着打开linux进入var文件夹:

$ cd /var

然后创建一个apps文件夹:

$ sudo mkdir apps

将你打好的war包拖进来,这里我使用的工具是xshell+xftp:

springboot+Jsp部署linux 随笔 第3张

然后就是关键部分创建一个linux服务:

$ sudo nano /etc/systemd/system/crm.service  //这里.service前的名字自己定

接下来将下列代码添加进这个service文件中:

[Unit]
Description=crm  //这个名字自己定
After=syslog.target

[Service]
ExecStart= /usr/bin/java -jar /var/apps/crm-server-webapp-admin.war //这是你的war包的路径和名字

[Install]
WantedBy=multi-user.target

接下来我们就可以启动服务了:

$ sudo systemctl start crm   //启动服务

$ sudo systemctl stop crm  //停止服务

$ sudo systemctl status crm  //服务状态

$ sudo journalctl -u crm.service  //日志

 

  

扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄