使用宝塔上传jar(基于SpringBoot)
走了好多弯路,所以想把这些记录下来!
一、服务器购买
博主是在618购买的腾讯云服务器,优惠力度比较大,入手了一个一年的,至于是选择腾讯云还是阿里云,感觉对于个人博客而言都差不多,由于之前用过腾讯云,所以又买了腾讯的,这里给个连接:
我买的就是腾讯云里面的这个,记得购买下单时更改成CentOS ,至于是什么版本那就自己选择CentOS 7.5 64
二、远程连接服务器
1. 修改用户名密码
博主购买服务器后直接就给我默认安装了CentOS 7.5 64位系统,用户名和密码也都默认了,可能是我有些选项没有选择吧,不过不影响,进入实例控制台修改密码,点击更多操作,选择重置密码,验证后进行重置,密码尽量复杂些!
2.下载安装FinalShell
别问我为什么使用FinalShell, 用了你就知道,好用!给个下载地址:http://www.hostbuf.com/
点击,选择你所需要的版本
下载后进行安装,安装后打开如下,点击文件夹
新建SSH远程连接,填写服务器信息:
- 名称:可随意,方便辨识用
- 主机:复制服务器的公网IP
- 端口:服务器端口,默认是22
- 用户名:没修改就是root
- 密码:重置时设置的密码
点击确定即可远程连接服务器
三、环境搭建
这里推荐使用宝塔搭建:
- 点击安装:
- 到Shell中输入如下运行即可:
**就会给你宝塔外网、内网、账号、密码,这个一定要记住!**
建议使用便签保存,包括服务器密码
yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh
- 修改规则,将宝塔端口号8888放行,及配置放行一些端口号
登入宝塔Linux面板:输入你的外网链接,并输入账号密码登入(这里是上面说到的)
**在下载所需要的环境:**下载如下环境,如果以后有需要你可以自己下载其他的环境
- MySQL
- Redis
- Nginx
- Tomcat
最后在配置一下放行MySQL
MySQL3306端口号:
到这里基本的环境就完成了!✿✿ヽ(°▽°)ノ✿
四:项目上传
将数据库导入:
点击导入
点击本地上传:然后上传你项目对应的数据库,
上传完毕后记得把项目里面的数据库密码改成宝塔里添加的
生成jar包:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-vFdtKLxx-1630687910478)(…/…/AppData/Roaming/Typora/typora-user-images/image-20210904001648056.png)]
注:生成jar时pom里面一定要有如下配置:如果你的配置爆红,记得去看一下我其他文章SpringBoot爆红原因解决。
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
生成完之后有target下面就会有:
我们只需要把这个放到你服务器对应的文件里面去,我这里使用的是home。
然后在到宝塔里配置安全端口(这个对应你的SpringBoot项目的端口)我这里使用的是8083
也可以在腾讯云里面配置
五:项目运行及关闭
Linux服务器上jar包启动和关闭方式
找到对应的包目录,由于我直接是放在home下了,我就进入这里面
1、直接启动
输入命令
[root@VM-0-5-centos home]# java -jar chapter.jar
这种启动方式有个缺点:启动好了之后就不能动了,不能ctrl+c退出,也不能关闭终端,一旦退出或者关闭终端,程序就会关闭。
2、后台启动
后台启动命令如下:
[root@VM-0-5-centos home]# java -jar chapter.jar &
&符号就代表后台启动,这种启动方式日志仍然输入到终端控制台中,但是ctrl+c不会关闭程序,退出终端,程序会关闭
3、nohup启动
命令如下:
[root@VM-0-5-centos home]# serviceJarTest]$ nohup java -jar chapter.jar &
这种方式会生成一个nohup.out来记录日志,所以日志不会直接输出到终端,而且这种方式启动,ctrl+c或者关闭终端,程序都不会结束
4、指定日志文件
nohup启动的日志输出文件nohup.out是自动生成的,但是我们更希望自己指定日志输出文件,用以下命令:
[root@lgs serviceJarTest]# nohup java -jar chapter.jar > logs.log &
此命令会将日志重定向到当前的logs.log文件中,但是只会输出标准输出。
这种方式启动,ctrl+c或者关闭终端,程序都不会结束
5、重定向错误输出(推荐)
上面的命令只会讲标准输出(stdout)重定向到logs.log文件中,下面命令可以将错误也输出到文件中,也就是stderr这里可以看到jar包的进程为18707(关闭进程的时候用的到)
[root@VM-0-5-centos home]# nohup java -jar myblog-0.0.1-SNAPSHOT.jar > blog.log 2>&1 &
7、关闭jar包程序
-
如果是第一种方式启动,ctrl+c就可以直接关闭
-
如果是第二种方式启动,关闭终端就可以关闭程序
-
如果是第三四五种方式启动,可以用kill进程的方式结束进程:
查看java进程:
[root@VM-0-5-centos home]# ps -ef | grep java
21137就是jar包的系统进程,运行kill -9 21137即可结束进程。
或者在你以第三四五种方式启动的时候,终端会打印出启动的进程号,如果你够厉害,能记住,那直接kill -9 杀死也行:
大工告成!接着去访问对应的端口号就行
ill -9 21137即可结束进程。**
或者在你以第三四五种方式启动的时候,终端会打印出启动的进程号,如果你够厉害,能记住,那直接kill -9 杀死也行:
大工告成!接着去访问对应的端口号就行