征文投稿丨在轻量应用服务器上部署SpringBoot项目
本文来自轻量应用服务器征文活动用户投稿,已获得作者(昵称AnonyEast)授权发布。
引言:新手开发人员在本地进行SpringBoot项目开发时,如果想要将项目部署到轻量应用服务器上,用于线上调试或查看上线后的项目效果,在外网通过一个网址直接访问到这个项目,则可以参考本教程。
一、适用场景
1.项目使用IntelliJ IDEA进行开发,并使用Maven构建的SpringBoot项目。
2.服务器安装有宝塔面板。
3.在宝塔面板中安装了Apache或Nginx服务、JDK。
4.如果项目使用了数据库,还需要在服务器安装相应的数据库。
5.有已经注册的域名。
二、部署细节
1. 如果项目是前后端分离项目,那么后台请求地址不能是localhost,必须改为本项目的域名,在打包之前就要做好修改。
如果项目使用了数据库,必须确保项目部署到服务器后,application.yaml配置文件中配置的数据库地址和端口,相对于服务器而言仍然是可以访问的,否则就需要进行修改。(部署到服务器后,localhost就是服务器自身了,而不是自己电脑上的本地开发环境)
2. 在SpringBoot项目pom.xml文件的<project>标签中,添加如下代码,代表本项目要打包为一个jar包。
<packaging>jar</packaging>
例如:
<modelVersion>4.0.0</modelVersion>
<groupId>com.example</groupId>
<artifactId>stuinfo-query</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>StudentInfoQuery</name>
<description>学生信息管理系统</description>
<packaging>jar</packaging>
3. 在IntelliJ IDEA的Maven面板中,运行Lifecycle中的clean,清除所有已经编译生成的文件,即删除target目录。
4. 在Maven面板中,运行Lifecycle中的package,开始将项目打包为jar包。如果需要跳过测试,可以先点击“小闪电”按钮,再运行package命令。跳过测试可以大幅提高打包速度。
如果在控制台看到如下的类似输出结果代表打包成功
5. 在target目录中可以看到刚刚打包完成的jar包。我们需要将这个jar包在服务器上运行。
6. 添加域名解析,例如,若您的项目的域名是stuinfoquery.example.com,则您需要在购买example.com这个域名的域名服务商处,添加一个叫做stuinfoquery的A记录,并将记录值设置为您的轻量应用服务器公网ip地址。
轻量应用服务器的ip地址可以在阿里云轻量应用服务器控制台查看,如下图所示,106.15.xxx.xxx就是轻量应用服务器的公网ip地址。
7. 登录宝塔面板,在网站存放路径新建一个目录,作为本项目的运行目录,然后将项目的jar包上传到该目录。下图示例中服务器的网站存放路径是/www/wwwroot。
8. 在宝塔面板的软件商店中,打开“Java项目一键部署 3.4”,如果没有安装这个软件,需要先安装。
9. 打开该软件后,选择SpringBoot,点击添加项目。项目路径选择刚刚上传的jar包,项目域名输入本项目的域名,项目端口可以根据情况进行更改。
在自定义参数中,可以指定SpringBoot启动参数,例如,如果你的项目存在多个application-xxx.yaml文件,则可以通过--spring.profiles.active参数指定使用哪一个application-xxx.yaml。
10. 添加完成后启动项目,查看日志,检查项目是否正常启动,如果正常启动没有报错,则点击映射按钮,将本项目映射到宝塔面板的网站列表中。
11. 以上步骤完成之后,就可以通过域名访问SpringBoot项目了。
三、注意事项
1. 当application.yaml文件被分为dev和prod等多个版本时,必须在自定义参数中使用--spring.profiles.active指定配置文件,否则项目将无法正常启动。
2. 在宝塔面板7.8.0中,可以直接在网站列表添加Java项目了,不再需要安装“Java项目一键部署 3.4”这个软件了,操作方法与本文中介绍的方法基本一致,不同之处在于无需点击映射按钮了。
以上就是在轻量应用服务器上部署SpringBoot项目的全部细节,希望对你学习和使用产品有所帮助。
点击我要投稿 ,查看全新升级的轻量应用服务器征文活动,奖励更丰富,月月可投稿~