SpringBoot(八)Nginx部署Springboot的jar项目
springboot项目的增删查改做的差不多了,突发奇想使用微信小程序作为一个前端。微信小程序可以在本地调试,但是Linux好像没有微信小程序的客户端,所以提前使用Nginx放到了服务器上
springboot项目部署有以下几个步骤:打包项目,上传vps,配置Nginx,启动项目。
打包项目
- 【前提】配置springboot项目的context-path,这个非常重要,要不然Nginx代理会失败。我就是因为这个试错了好久,因为网上没有人会写这个,他们默认你知道,但是小白可能看教程不完整。
编辑项目的application.yml文件,设置context-path的路径(如/api)
server:
servlet:
context-path: /api
-
点击idea右侧的maven,点击install/package都行,打包生成的jar文件位于target文件夹中。
上传vps
参看历史文章SCP传文件
配置Nginx
基础的参看历史文章Nginx基本配置
这里写一下Nginx的反向代理,即springboot内置的tomcat端口是8080,我们https访问的是443,我们需要将请求从443转给8080.
server{
listen 443;
server_name sunmker.cn;
……
//最开始context-path写的是/api 所以这里也是
location /api/ {
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://127.0.0.1:8080;
}
……
}
启动项目
首先,配置数据库。
接着,使用java -jar 可以运行jar包
java -jar xxx.jar
但是这样有一个问题,关闭命令行就会退出程序,所以我们需要使用nohup 命令
nohup java -jar doo.jar >/dev/null 2>&1 &
最后还有更加完美的方法,就是将它做成 服务,开机自启,但是我倒腾了好久没成功,下次再说。