前言
SpringBoot项目部署到腾讯云服务器上(centos7),把自己踩过的坑写一下
一、购买学生版服务器
https://cloud.tencent.com/act/campus?fromSource=gwzcw.2432500.2432500.2432500&utm_medium=cpc&utm_id=gwzcw.2432500.2432500.2432500
在这里可以购买9.9元一个月的一核2G的轻量级云服务器,搭建点小项目足够用了
操作系统这里我选择的是CentOS 7.5 64位
之后可以在云产品->轻量级服务器中找到购买的服务器,然后进入管理控制台
然后需要改一下密码
点重置密码,设置一个密码
二、使用XShell远程连接到服务器
找到购买的服务器,然后找到网络与域名查看我们的IP地址
然后下载XShell (如果看不懂英文就用谷歌浏览器转成中文)
https://xshell.en.softonic.com/
依旧可以下学生版(学生真是可以为所欲为)
默认安装就可以
安装之后打开XShell 点击文件 新建
名称填你想填的名字 主机填刚才看的服务器IP地址 然后点连接
之后会让用户名密码 用户名默认是root 密码填刚才改好的密码就可以了
出现这个就说明已经连接上服务器了
可以输入cd /跳转到根目录
然后再输入 pwd 看一下所有的文件夹目录
三、下载jdk
输入以下命令下载jdk1.8
yum install java-1.8.0-openjdk.x86_64
下载完成后验证一下
java -version
然后配置下环境变量
vi /etc/profile
按i进入编辑模式
在文件最后加入
#set java environment
JAVA_HOME=/usr/lib/jvm/jre-1.6.0-openjdk.x86_64
PATH=$PATH:$JAVA_HOME/bin
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export JAVA_HOME CLASSPATH PATH
然后按esc进入命令行模式
输入:wq保存并退出
没有配置成功的可以参考下https://www.cnblogs.com/wjup/p/11041274.html
四、数据库
(其实可以买一个Mysql云数据库 一个月才两块钱 但是好像是都卖完了…)
安装Mysql数据库可以用命令行
如果觉得下的太慢可以在官网下压缩包然后通过xshell传到服务器上再安装
(rz回车)
转下大佬的博客
通过命令行安装:https://www.cnblogs.com/bigbrotherer/p/7241845.html
通过压缩包安装:https://www.jianshu.com/p/276d59cbc529
安装完成之后更改一下密码
如果提示新密码不安全
先用set global validate_password_policy=0;把密码安全策略降到最低
这时候就只验证密码够不够八位
也可以再通过set global validate_password_length=7;来改变密码的位数
建议再新建一个用户用来访问数据库
use mysql
create user ‘用户名’@’%’ identified by ‘密码’;(%表示所有IP都可以访问,也可以把%换成IP地址来达到限定IP的目的)
之后在腾讯云的控制台里找到防火墙
点添加规则
然后可以使用Navicat连接试一下
连接->MySQL
连接名可以自己取
主机写我们服务器的IP地址,端口是3306,用户名和密码填我们刚刚创建的用户,点一下测试连接,出现连接成功就说明已经连接上服务器上的数据库了
如果没有访问成功可能是Linux防火墙没有开放3306端口
https://www.cnblogs.com/Azi-mi/p/10514952.html
五、将项目部署到服务器上
由于SpringBoot内嵌了tomcat 部署到服务器上只需要把SpringBoot项目打成一个jar包就可以了
先要在pom文件中添加配置信息
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
使用Maven打jar包
在target文件夹下面可以找到打好的jar包
使用xshell把jar包上传到服务器上
执行
java -jar “项目名”.jar
就可以看到项目启动了
仍然需要让腾讯云的防火墙和Linux的防火墙将端口开放
之后通过IP地址加项目设置的端口号(我设置的是8080)就可以访问到项目了