springboot+vue部署到nginx服务器上(linux)——完整版(上)中,介绍了前后端项目部署到服务器上的一些前提准备工作,以及自己部署前端vue3项目的过程,接下来介绍的是部署后端springboot的过程。


前提

将springboot和vue统一安装在一台服务器上,这台服务器已经安装了数据库服务以及jdk。


后端springboot项目打包与部署


数据库配置

如果将数据库(如mysql服务)与后端springboot服务放在同一台服务器上,那么在springboot项目的application.yml或application.properities配置文件中,只需要将数据库的IP配置为localhost即可,以和后端服务配置在同一台服务器mysql为例,在application.yml文件中配置如下:

server:
  port: 后端服务端口号

spring:
  datasource:
    driver-class-name: com.mysql.jdbc.Driver
    url: jdbc:mysql://localhost:3306/数据库名?serverTimezone=GMT%2b8&useUnicode=true&characterEncoding=utf8
    username: root
    password: 数据库密码
  jackson:
    time-zone: GMT+8
mybatis:
  #  扫描所有mybatis的xml文件,扫描路径为target/classes/(映射到开发时的src/main/resources/)下自己创建的mapper文件夹下的所有xml文件
  mapper-locations: classpath:mapper/*.xml
  #  mybatis输出日志
  configuration:
    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl

mybatis-plus:
  #  mybatis-plus输出日志
  configuration:
    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl

【注】如果数据库服务与后端不在同一台服务器上,那么将上面的localhost改为数据库所在服务器的IP地址即可;

要在数据库所在的服务器上防火墙打开数据库服务的端口号,仍以mysql为例,mysql服务所在端口号为3306,故在mysql所在的服务器上执行以下命令:

firewall-cmd --zone=public --add-port=3306/tcp --permanent
firewall-cmd --reload

以及在安全组规则中设置放行该端口号。

maven打包(IDEA下)

在这里插入图片描述在IDEA中的maven侧边栏,点击package即可,然后就可以在项目文件夹所在的target文件夹下找到jar包文件。此外还可以通过配置pom.xml中的build标签下的finalName属性值设置打包后的jar包文件的名称,如下图:
在这里插入图片描述
最后,将在本地打包好的jar包传送到服务器的任意目录下。

服务器上启动后端springboot服务

将打包好的jar包传送到服务器上后,首先要打开数据库服务(在这里就不多说),然后再运行springboot的jar包,就完成了后端服务的启动。
运行jar包的命令,在jar包所在的目录下:

java -jar xxx.jar 

最后,要在springboot所在的服务器上防火墙打开后端springboot服务的端口号,在springboot所在的服务器上执行以下命令:

firewall-cmd --zone=public --add-port=后端服务端口号/tcp --permanent
firewall-cmd --reload

以及在安全组规则中设置放行该端口号。

服务器上对后端springboot服务开启后台运行和结束

如果直接使用上面的方法启动springboot服务,可以在命令行窗口中观察到日志输出,但是这样做的问题是,当结束关闭命令行窗口后,springboot服务进程也将自动结束,所以当前后端都调试无误之后,需要将springboot改为在服务器的后台运作:
①实际发布时,开启springboot后端服务,使之在后台工作,且不输出日志文件:

nohup java -jar xxx.jar>/dev/null 2>&1 &

【注】使用nohup java -jar xxx.jar &将在jar包所在的目录下输出日志文件nohup.out;
②这样子又如何终止springboot后端服务呢?

netstat -nap|grep 后端服务端口号

查看springboot后端服务的进程号,然后使用kill -9 命令可以将该进程结束,虽然这不是优雅结束springboot后端服务的方式,但也是可以用的:

kill -9 进程号
Logo

更多推荐