阿里云服务器部署Springboot(Maven)项目(一目了然)
步骤一(准备工作):
首先我们需要有一个云服务器,然后需要安装好jdk的环境,我安装的是jdk17,在电脑上安装远程软件,我安装的是Xshell、Xftp,这几个过程网上有很多很清楚的步骤,大家可以自行查阅。
步骤二(本地打包项目):
打开我们的Springboot项目,然后点击右上角的Maven》点击自己的项目,找到》package双击执行打包命令,不出意外会运行成功出现,在控制台出现BUILD SUCCESS
这样就nice了!,然后根据路径找到我们的jar项目;
步骤三(将本地项目上传至云服务器并运行):
这里通过Xftp将文件上传自己的项目路径,个人建议是自己建一个属于自己的项目路径,并且再装备一个文件防止之前版本的项目,方便管理
上传后就可以通过Xshell来运行项目啦。
首先我们要检查我们写springboot项目的时候application.yaml文件中配置的server端口是多少,我配置的是8081,然后将阿里云服务器得物对应端口打开,就是进入服务器的安全组,放行该端口即可;
确定了端口后,我们检查阿里云服务器的该端口是否被占用:
lsof -i :8081
如果发现被占用可以使用kill -9+进程号杀死进程
[root@iZ2zeharx5qb29bhj4uwt7Z ~]# lsof -i :8081
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
java 199616 root 11u IPv6 2212494 0t0 TCP *:tproxy (LISTEN)
[root@iZ2zeharx5qb29bhj4uwt7Z ~]# kill -9 199616
然后我们走到项目所在的目录:并执行让项目一直运行的命令:
我们可以使用 nohup 命令查询运行的某个程序的所有输出信息,这对于调试长时间运行的后台任务或检查程序是否按预期执行非常有用。当出现如下图的信息就表示成功啦
[root@iZ2zeharx5qb29bhj4uwt7Z ~]# cd /usr/local/myproject
[root@iZ2zeharx5qb29bhj4uwt7Z myproject]# nohup java -jar bcms-1.0-SNAPSHOT.jar &
[1] 255607
[root@iZ2zeharx5qb29bhj4uwt7Z myproject]# nohup: ignoring input and appending output to 'nohup.out'
[root@iZ2zeharx5qb29bhj4uwt7Z myproject]# cat nohup.out
. ____ _ __ _ _
/\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
\\/ ___)| |_)| | | | | || (_| | ) ) ) )
' |____| .__|_| |_|_| |_\__, | / / / /
=========|_|==============|___/=/_/_/_/
:: Spring Boot :: (v3.0.5)
2024-07-10T21:51:07.462+08:00 INFO 255607 --- [ main] com.zhimu.Main : Starting Main v1.0-SNAPSHOT using Java 17.0.11 with PID 255607 (/usr/local/myproject/bcms-1.0-SNAPSHOT.jar started by root in /usr/local/myproject)
2024-07-10T21:51:07.466+08:00 INFO 255607 --- [ main] com.zhimu.Main : No active profile set, falling back to 1 default profile: "default"
2024-07-10T21:51:09.719+08:00 INFO 255607 --- [ main] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat initialized with port(s): 8081 (http)
2024-07-10T21:51:09.732+08:00 INFO 255607 --- [ main] o.apache.catalina.core.StandardService : Starting service [Tomcat]
2024-07-10T21:51:09.733+08:00 INFO 255607 --- [ main] o.apache.catalina.core.StandardEngine : Starting Servlet engine: [Apache Tomcat/10.1.7]
2024-07-10T21:51:09.846+08:00 INFO 255607 --- [ main] o.a.c.c.C.[Tomcat].[localhost].[/] : Initializing Spring embedded WebApplicationContext
2024-07-10T21:51:09.848+08:00 INFO 255607 --- [ main] w.s.c.ServletWebServerApplicationContext : Root WebApplicationContext: initialization completed in 2185 ms
2024-07-10T21:51:10.113+08:00 INFO 255607 --- [ main] c.a.d.s.b.a.DruidDataSourceAutoConfigure : Init DruidDataSource
2024-07-10T21:51:10.395+08:00 INFO 255607 --- [ main] com.alibaba.druid.pool.DruidDataSource : {dataSource-1} inited
大功告成,我们可以在postman中输入服务器的ip和访问路径,来进行测试访问了,这里我使用的不是部署到额外的tomcat项目中,因为springboot自带了tomcat容器,可以直接部署!
因为我写的是前后端分离项目,如果需要直接在网站上进行访问,还需要将前端vue项目进行部署