部署springboot项目到阿里云服务器(小白包会)

部署springboot项目到阿里云服务器(小白包会)

前言:

学了java相关的项目后,想着如何让其他人也能访问我的项目,于是就用阿里云服务器部署springboot项目,按着网上教程也部署成功了,但是有些部分不够清楚,耗费了些时间,所有自己写一篇文档,尽可能把每一步都写清楚

一、创建一台阿里云服务器

1.打开阿里云官网

链接:https://www.aliyun.com
在这里插入图片描述

2.注册/登录账号

在这里插入图片描述

3.搜索云服务器

在这里插入图片描述
点击云服务器ECS
在这里插入图片描述

4.云服务器选择

这里有两个选项,购买和免费试用,新用户可以免费试用三个月,我这里选择的是免费使用
在这里插入图片描述
跳转后可以看到这有免费试用版,点击立即试用(右边还有1个也是免费的,但是好像是小程序相关的,感兴趣可以点击试用教程看看)
在这里插入图片描述

5.云服务器配置

自行选择合适的配置
在这里插入图片描述
下面预装应用这里可以不选
在这里插入图片描述

点击立即试用
在这里插入图片描述

6.查看云服务器

回到主页,点击控制台

在这里插入图片描述

再点这个“菜单(三条杠)”
在这里插入图片描述
点击云服务器ECS
在这里插入图片描述
服务器购买后默认启动,点击实例查看详细信息
在这里插入图片描述
如果忘记密码可以点击重置密码,也可以先点击远程连接体验一下
在这里插入图片描述
点击远程连接后,点立即登录

在这里插入图片描述

输入用户名默认(root)和自定义密码

在这里插入图片描述
进入到如下界面就表示服务器创建成功
在这里插入图片描述

7.设置安全组

服务器默认是没有开启防火墙,但是阿里云好像是自带防火墙,所有得通过设置安全组来开放端口号,让其他人通过公关IP+端口号来访问springboot项目
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

二、使用Xshell远程连接服务器

如果没有安装Xshell软件可以先去安装一下

1.新建会话

在这里插入图片描述
填写名称和主机IP,这里的主机IP就是前面服务器的公网IP

在这里插入图片描述
在这里插入图片描述

再次填写用户名和密码

在这里插入图片描述

在这里插入图片描述

2.连接成功

在这里插入图片描述

三、在阿里云服务器上配置mysql

1.创建mysql文件夹

先在根目录下创建mysql文件夹,用于存放下载的mysql

[root@iZ2zegw3mkls9olizhdg74Z ~]# cd ..
[root@iZ2zegw3mkls9olizhdg74Z /]# ls
bin   dev  home  lib64       media  opt   root  sbin  sys  usr
boot  etc  lib   lost+found  mnt    proc  run   srv   tmp  var
[root@iZ2zegw3mkls9olizhdg74Z /]# mkdir mysql
[root@iZ2zegw3mkls9olizhdg74Z /]# cd mysql/
[root@iZ2zegw3mkls9olizhdg74Z mysql]# wget 'https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm'

在这里插入图片描述

2.用如下命令安装yum源

rpm -Uvh mysql57-community-release-el7-11.noarch.rpm
rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022

在这里插入图片描述

3.用如下命令安装mysql

yum install -y mysql-server

在这里插入图片描述

4.启动mysql

systemctl start mysqld
systemctl status mysqld

在这里插入图片描述

5.重置密码

mysql在初始化的时候会生成一个自定义的密码,找到这个密码,在登录的时候输入

grep 'temporary password' /var/log/mysqld.log 

在这里插入图片描述

记下这里的密码

登录mysql数据库

mysql -u root -p

在这里插入图片描述

通过以下命令设置密码的验证强度等级,设置 validate_password_policy 的全局参数为 LOW,并将密码长度设置为你想要的长度:

set global validate_password_policy=LOW;
set global validate_password_length=6;

在这里插入图片描述

执行以下命令修改密码和登录权限:

UPDATE mysql.user SET authentication_string=PASSWORD('123456') WHERE User='root';
use mysql;
UPDATE user SET host = '%' WHERE user='root';

如果报错就换成:

ALTER USER USER() IDENTIFIED BY '123456';
use mysql;
UPDATE user SET host = '%' WHERE user='root';

最后执行刷新MySQL的系统权限命令:

FLUSH PRIVILEGES; 

在这里插入图片描述

到这里密码修改完成,如果开启了防火墙记得在安全组中加入mysql的端口–3306(最好是配置一下)

6.Navicat连接云服务器的mysql

使用mysql的可视化工具Navicat连接云服务器上的mysql数据库

新建连接

在这里插入图片描述

填写信息

在这里插入图片描述

7.导入数据

导入自己项目需要用到的数据即可

在这里插入图片描述

四、在阿里云上安装JDK

1.下载JDK

官网下载地:https://www.oracle.com/java/technologies/downloads/#java8

我这里使用的是jdk-8u333-linux-x64.tar.gz,如果官网慢可以使用我分享的网盘

链接:https://pan.baidu.com/s/1hEtMFGIGSDsBo02Wr7uOuA?pwd=1111 
提取码:1111

2.将文件上传到阿里云服务器

先在云服务器上安装lrzsz,再通过Xshell上传jdk文件

yum install lrzsz

在这里插入图片描述

再cd到root下,这边建议先直接将jdk压缩包往xshell里面托,应该是可以上传的
在这里插入图片描述

在这里插入图片描述

如果不行可以点击上面那个绿色图表,可以实现文件传输(我这里通过拖过去就成功了)
在这里插入图片描述

3.解压文件

通过如下命令将文件解压到usr下

tar -zxvf /root/jdk-8u333-linux-x64.tar.gz -C /usr

在这里插入图片描述

cd到usr下查看下,发现已经解压成功

在这里插入图片描述

4.配置系统环境变量

cd进目录 /etc ,再使用 vim命令编辑文件profile

cd /etc
vim profile

在这里插入图片描述

profile文件中,打开大写模式,双击G键,光标会跳到最底下;再按一下i键,进入编辑模式,将光标移到最后回车,增加一行;

在文件末尾加上以下几行(请注意JAVA_HOME文件路径);添加完毕后按Esc,退出编辑模式,输入 :wq 回车

Linux中vim的基础,不清楚的话可以自行了解一下

export JAVA_HOME=/usr/jdk1.8.0_333
export CLASSPATH=$JAVA_HOME/lib/
export PATH=$PATH:$JAVA_HOME/bin
export PATHJAVA_HOME CLASSPATH

在这里插入图片描述

使用source命令执行profile文件,使之生效

source /etc/profile

在这里插入图片描述

到这一步,jdk的安装就全部完成了。

可以使用java -version命令查看java的版本信息

在这里插入图片描述

五、安装Redis缓存

声明:如果想要部署的项目中没有使用到Redis缓存,可以跳过这一步,直接看第五步

1.Redis的编译环境

Redis是C语言开发的,安装redis需要先下载源码进行编译,编译需要依赖于GCC编译环境,如果 CentOS上没有安装gcc编译环境,需要提前安装,安装命令如下:

 yum install gcc-c++

在这里插入图片描述

如果提示是否下载,选择:y

在这里插入图片描述

2.上传Redis安装文件

我这里使用的是redis-5.0.5.tar.gz,和前面JDK压缩包一起放到网盘里面了,还有redis图形化工具也在里面,需要可自行下载

redis图形化工具是在window下使用,方便管理服务器上的Redis,类似mysql的Navicat

在这里插入图片描述

接下来先cd到root用户下上传redis-5.0.5.tar.gz压缩包
在这里插入图片描述

接着将其解压到根目录(/)下(存放路径也可以按自己的来)

tar -zxvf redis-5.0.5.tar.gz -C /

在这里插入图片描述

查看/下,有redis-5.0.5就说明解压成功
在这里插入图片描述

3.编译Redis

编译Redis,将.c文件编译为.o文件

进入redis-5.0.5文件夹,执行make

cd /redis-5.0.5
make

在这里插入图片描述

编译成功!如果编译过程中出错,先删除安装文件目录,后解压重新编译。

在这里插入图片描述

4.安装

执行如下命令安装Redis

make PREFIX=/redis install

说明:这里的/redis 是自定义的redis安装路径
在这里插入图片描述

安装好之后可以cd到/redis/bin下查看相关命令

在这里插入图片描述

5.Copy配置文件

Redis启动需要一个配置文件,可以修改端口号信息。将redis解压的文件夹(/redis-5.0.5)中的redis.conf文件复制到安装目录(/redis)

cp redis.conf /redis

在这里插入图片描述

6.Redis启动

redis有两种启动方式:前端启动和后端启动。由于前端模式启动后,不能再进行其他操作,所有这里就只介绍后端启动

修改redis.conf配置文件,设置:daemonize yes,然后可以使用后端模式启动

cd /redis
vim redis.conf

在这里插入图片描述

这里输入/daemonize回车后跳转到对应位置,在将no改为yes

在这里插入图片描述

改好后Esc退出编辑模式,输入:wq回车,保存退出
在这里插入图片描述

输入如下指令启动Redis,然后ps查看下进程

./bin/redis-server ./redis.conf
ps -ef | grep -i redis

在这里插入图片描述

7.客户端访问redis

如果需要进入redis,可以输入如下指令进入

./bin/redis-cli

在这里插入图片描述

在bin文件夹下运行redis-cli,该指令默认连接的127.0.0.1 ,端口号是6379,输入ping命令会返回pong,表示redis安装成功

注意:redis刚安装是没有设置密码的,即不需要密码,如果想要设置密码可以执行如下命令:

config set requirepass 123456

设置之后,可以通过指令查看密码

config get requirepass

在这里插入图片描述

这里可以看到设置密码后再执行命令会error,因为需要登录密码了,通过auth 123456登录一下

auth 123456

到这redis就设置完成了

六、部署SpringBoot项目

1.将项目打成jar包

目前linux云服务器上的环境已经配置好了,由于SpringBoot内置了tomcat,所以在Idea中将本地项目打包成jar包就可以免去tomcat的配置了(如果是打包成war包,那还是要配置tomcat的)

回到本地windows的 SpringBoot项目,对我们的项目做一些设置,到IDEA中,打开pom.xml,添加如下语句,将项目的打包形式设置好

<!-- 打包成jar包 -->
<packaging>jar</packaging>

在这里插入图片描述

2.设置项目端口号

打开application-dev.yml,设置项目运行端口(我用的是8091,默认是8080,如果你用的是别的端口,记得把端口加入到安全组中去)如果用的是properties文件,同样修改端口号就可以了
在这里插入图片描述

这里对mysql数据和redis缓存进行了配置,mysql端口号是3306,redis是6379,记得加入安全组

注意:如果测试失败先去检查是否将这些端口号加入到安全组,虽然默认防火墙没有开,但是阿里云服务器用的好像是自带(这里我也不太清楚)

3.在Idea中打包项目

点击maven

在这里插入图片描述

双击package开始打包

在这里插入图片描述

显示如下图所示,表示打包成功
在这里插入图片描述

右键target,在文件夹中打开

在这里插入图片描述

进入target文件夹,可以找到jar包webchat-0.0.1-SNAPSHOT.jar

在这里插入图片描述

4.上传jar包到云服务器

接下来通过xshell将其上传到阿里云服务器,先cd到/root下,创建springboot文件夹,专门用来存放springboot项目,再将项目jar包webchat-0.0.1-SNAPSHOT.jar传过去

在这里插入图片描述
在这里插入图片描述

输入ls命令查看一下

在这里插入图片描述

5.部署项目

使用java指令运行项目jar包,进行项目部署

方式一:一次启动

java -jar ***.jar  //***为你的jar包名

在这里插入图片描述

这种启动方式是一次启动,当我们关掉Xshell的时候,我们的网站又访问不上了,又得重新打开Xshell,再次执行该命令

方式二:永久启动

nohup java -jar  ***.jar  &     //***为你的jar包名

在这里插入图片描述

永久启动后即便关闭Xshell软件,仍能访问网站

部署号后随便找个浏览器,搜索栏输入http://公网ip:端口号

如果可以搜索到你的网站了,就说明项目成功部署到阿里云服务器上了

http://公网ip:端口号

在这里插入图片描述

注意:如果配置没问题还是访问不了就去检查安全组是否加进去了,项目中用到的端口号都要加进去,mysql:3306,redis:6379,tomcat:默认8080(我设置为8091)

关闭java项目:kill -9 进程号
在这里插入图片描述

七.设置域名

前面说到别人也可以通过公网IP+端口号访问springboot项目,但是直接将服务器的IP暴露出来是不安全的,所有就需要使用域名

1.购买域名

在这里插入图片描述

点击域名注册
在这里插入图片描述

这里也可以自行选择
在这里插入图片描述

这里有很多,新用户有优惠,选一个
在这里插入图片描述

搜索想要的域名,选择1元的就好,没有就换个域名
在这里插入图片描述

选择后进入如下页面,然后点击创建信息模板(实名认证)

在这里插入图片描述

接下来填写个人信息,提交后记得如果没有看到信息模板就刷新下页面

在这里插入图片描述

点击查看
在这里插入图片描述

填写个人信息

在这里插入图片描述

填写完后点击提交

在这里插入图片描述

然后点击立即购买

在这里插入图片描述

在这里插入图片描述

这里可以看到域名还没实名认证,因为之前提交的认证需要2-3天审核

在这里插入图片描述

2.域名解析

点击域名解析

在这里插入图片描述
在这里插入图片描述

填好信息后确认

在这里插入图片描述

3.快速认证

在域名列表中点击未实名认证

在这里插入图片描述

这里说模板认证成功不代表域名认证成功,那只能接着继续

在这里插入图片描述

在这里插入图片描述

提交认证后,这里就变成正常了
在这里插入图片描述

按理来说应该是没问题了,一般过会应该就可以访问了,访问地址如下:

http://域名:端口号
http://webchat.ltd:8091		# 我的网站

在这里插入图片描述

注意:这里刚开始可以通过链接访问,但是过会可能就访问不了,原因是没有备案,有需要可以自行备案

在这里插入图片描述

4.二次域名解析

注意:如果没有备案就无法进行下面步骤,嗯,我没有备案,所有就简单介绍下(底下参考博文中有详细介绍)

前面是通过域名+端口号访问网站,但是这样和平常用的不一样,要想去掉端口号,还需要再配置一条域名解析
在这里插入图片描述

点击添加记录

在这里插入图片描述

到这整个部署接结束了,可以通过网页地址访问,网页地址:http://域名

八、参考博客

1.将springboot项目部署到阿里云服务器(2022-07-29)

链接:保姆级教程——将springboot项目部署到阿里云服务器(小白包会)_怎么把框架项目放到阿里云公网上-CSDN博客

2.域名二次解析

链接:阿里云域名解析到非默认端口处理方式_阿里云 域名解析 配置 端口号 隐性url-CSDN博客

  • 61
    点赞
  • 94
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值