一、引言

1. 云主机

1.1 什么是云主机?

  • 云主机是一种类似VPS主机的虚拟化技术,在一台主机(主机集群)虚拟出多个类似独立主机的部分,能够实现单机多用户,每个部分都可以作为单独的操作系统、管理方法同主机一样。
  • 云主机是一个建立在多个主机(主机集群)上的虚拟系统,集群中的每台主机都有这个云主机的镜像,从而大大提高了虚拟云主机的安全稳定性

1.2 够买云主机

推荐阿里、腾讯

阿里:24岁以下免学生认证,享受学生优惠政策;超过24的学生需要学生认证

腾讯:25岁

1.3 云主机管理

  • 通过阿里云控制台管理云主机的状态
  • 启动、停止、重启
  • 设置实例密码
  • 自定义实例镜像
  • 安全组管理
  1. SpringBoot项目部署到阿里云linux服务器全流程

    博客所需要的软件下载地址如下:
https://pan.baidu.com/s/1u3Clf0HeGzQ0pS1RIDkaCA 
提取码:1h3v

二、购买云服务器(这里我推荐阿里云)

  • 2.1 前往阿里云官网:阿里云
  • 2.2 注册一个账号,登陆账号
  • 2.3 按如下步骤购买一个云服务器:
  • spring boot实现多服务之间的调用 spring boot 服务器要求_云主机


  • spring boot实现多服务之间的调用 spring boot 服务器要求_spring boot_02

  • 2.4按照自己的需要,选择合适的服务器配置,如果对配置不懂的,那你可以选择“一键购买”,买个差不多的服务器。注册过程中会让你设置账号密码什么的,还有一个远程登陆密码,最好在电脑中记录下,丢了很麻烦。
  • 注:需要记录的有 远程连接密码(6位数字)、公网IP、服务器账号、服务器密码(有特殊符号,数字,字母的那个)
  • spring boot实现多服务之间的调用 spring boot 服务器要求_java_03

  • 2.5 购买完成后,回到首页,点击 “控制台”>>“云服务器ECS”>>“实例”
  • spring boot实现多服务之间的调用 spring boot 服务器要求_java_04


  • spring boot实现多服务之间的调用 spring boot 服务器要求_spring boot_05

  • 2.6 在实例列表中就可以看到我们购买的云服务器。点进去,我们需要对服务器的安全组进行设置
  • spring boot实现多服务之间的调用 spring boot 服务器要求_spring boot_06

  • 2.7 安全组中除了自带的规则,我们还需要添加几个新的安全组
  • spring boot实现多服务之间的调用 spring boot 服务器要求_mysql_07


  • spring boot实现多服务之间的调用 spring boot 服务器要求_mysql_08

  • 2.8 回到“实例列表”,点击 实例ID 进入服务器,点击 ”远程连接“,输入自己设定的6位连接密码,就可以看到我们申请的这个服务器了。
  • spring boot实现多服务之间的调用 spring boot 服务器要求_java_09


  • spring boot实现多服务之间的调用 spring boot 服务器要求_云主机_10

spring boot实现多服务之间的调用 spring boot 服务器要求_java_11


spring boot实现多服务之间的调用 spring boot 服务器要求_云主机_12

  • 2.9 然后我们按任意键登陆登录服务器,输入用户账号密码(密码是很复杂,要求有特殊符号!@#的那个,密码输入过程中是不可见的,输完直接回车就行)

    到此阿里云服务器购买以及配置就结束了。

三、Linux远程工具

xshell 远程终端 (比阿里云登录上的系统更好方便)
xftp 远程资源管理工具(主要是后期上传文件方便)

3.1 xftp 资源管理工具

  • 安装,直接点下一步就行。(软件上面附有链接)
  • 创建连接

    登录成功后:

3.2 xshell 远程终端

  • 安装同上面一样
  • 创建连接(其实和上面的xftp都差不多)

    登录成功后:

四、云服务器上安装所需要的软件

4.1 安装jdk

  • 在xftp工具中将下载好的jdk.tar.gz(可以去官网下载,也可以使用我上面提供的链接)安装包放入到这个路径中

spring boot实现多服务之间的调用 spring boot 服务器要求_后端_13

  • 这时我们切换到xshell工具中输入我标注的命令可以看到这个路径是有我们上传的jdk安装包的
  • spring boot实现多服务之间的调用 spring boot 服务器要求_mysql_14

  • 接下来解压安装包就算安装成功了!使用tar命令解压压缩包,如果你下载的版本跟我不一样,记得把包名改成你自己的版本 。(tar命令:解压)
tar -zxvf jdk-8u221-linux-x64.tar.gz
  • 然后就跟你在windows系统下安装完jdk一样,你还要设置系统环境变量。linux系统中的设置方法为:找到文件 /etc/profile.
# 进入到/etc目录
cd  /etc
# 编辑profile文件,进入这个文件时要按一下 "i"进行输入状态
vim  profile
  • 进来以后是下面这个界面,按 i 键入编辑
  • spring boot实现多服务之间的调用 spring boot 服务器要求_后端_15

  • 在profile文件最后配置以下内容(记得jdk版本要一致。不然是无效的)
export JAVA_HOME=/usr/local/jdk1.8.0_221
  export JRE_HOME=$JAVA_HOME/jre
  export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib
  export PATH=$JAVA_HOME/bin:$PATH
  • 在文件的最后把上面的代码打进去,如果你的jdk版本跟我不一样,记得把 export JAVA_HOME=/usr/local/jdk1.8.0_221 这一行改成你自己的版本。然后按ESC键退出编辑,输入 :wq + 回车键保存退出文件。如图所示:
  • spring boot实现多服务之间的调用 spring boot 服务器要求_mysql_16

  • 立即执行profile文件,使之生效,使用source命令(source命令:依次执行文件所有语句)
  • spring boot实现多服务之间的调用 spring boot 服务器要求_后端_17

  • 到了这一步,输入命令java -version 如果出现如下图所示的内容。恭喜你,配置成功
  • spring boot实现多服务之间的调用 spring boot 服务器要求_云主机_18

4.2 安装mysql

  • 通过wget指令下载mysql的rpm文件
# 进入 urs/local目录
cd  /usr/local
# 输入如下指令下载mysql的rpm文件
wget http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm

spring boot实现多服务之间的调用 spring boot 服务器要求_后端_19

  • rpm安装mysql

rpm -ivh mysql57-community-release-el7-10.noarch.rpm

spring boot实现多服务之间的调用 spring boot 服务器要求_后端_20

  • 通过yum安装mysql服务

yum -y install mysql-community-server

spring boot实现多服务之间的调用 spring boot 服务器要求_java_21

#加入开机启动(即就是说系统启动的时候mysql也启动)
systemctl enable mysqld

# 启动MySQL服务
systemctl start mysqld 或 service mysqld start

#  查看mysql是否运行
lsof -i:3306

# 停止MySQL服务
systemctl stop mysqld 或 service mysqld stop

spring boot实现多服务之间的调用 spring boot 服务器要求_云主机_22

  • mysql启动成功后,接着先找到初始的密码登录到数据库,然后修改连接数据库的密码。
# 1.查找初始密码
cat /var/log/mysqld.log | grep password

# 2.登录到mysql
[root@theo log]# mysql -uroot -p
Enter password: 

# 3.修改密码
# 3-1 设置密码的检查机制为LOW(如果密码设置的比较简单就要设置这一项)
set global validate_password_policy=LOW

# 3-2 修改密码
set password=password('admin123');

# 4.授权远程登录(就是可以用navicat工具连接到数据库)
GRANT ALL PRIVILEGES on *.* to 'root'@'%' IDENTIFIED by 'admin123' WITH GRANT OPTION;
flush PRIVILEGES;

spring boot实现多服务之间的调用 spring boot 服务器要求_java_23

spring boot实现多服务之间的调用 spring boot 服务器要求_后端_24

spring boot实现多服务之间的调用 spring boot 服务器要求_后端_25

spring boot实现多服务之间的调用 spring boot 服务器要求_mysql_26

spring boot实现多服务之间的调用 spring boot 服务器要求_mysql_27

  • 至此恭喜你,mysql安装和配置完毕。

4.3 将springboot项目导成jar包的形式

  • 首先得在pom.xml文件中加如下代码
<build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>
  • 接着打开Terminal窗口,输入下面springboot打包命令:

mvn clean package -Dmaven.test.skip=true

spring boot实现多服务之间的调用 spring boot 服务器要求_后端_28

  • 如果出现下面的内容恭喜你打包成功。

4.4 将打包好的项目运行在阿里云服务器上

  • 首先在xftp工具上找到home文件夹位置,在文件夹里面新建一个以项目名称文件夹
  • 接着将找到自己项目的jar包放入以项目名称的文件夹里面(找到jar包直接拖到里面)
  • 接着利用 java -jar (jar包名称)命令启动springboot项目
# 首先进入/home/项目名称目录
cd /home/blog
# 接着启动springboot项目 
 java -jar (jar包名称)

spring boot实现多服务之间的调用 spring boot 服务器要求_后端_29


spring boot实现多服务之间的调用 spring boot 服务器要求_spring boot_30

  • 再输入公有的ip地址:8080端口到浏览器访问自己的项目显示成功,到此部署完毕
  • spring boot实现多服务之间的调用 spring boot 服务器要求_mysql_31

  • 在补充一个小细节,如果你想要项目一直运行的话,仅这样是不够的,还需要多加几步。
# 首先安装一个创建窗口命令
yum install screen

# 创建 screen 窗口(name可以随意取),注意,执行 screen -S name 之后系统会跳进一个新窗口,
这个窗口就是我们创建的新进程(它来执行我们的命令)。在这里面进行项目的启动即可。
screen -S name  

# 在新窗口中运行 springboot项目
 java -jar (jar包名称)

spring boot实现多服务之间的调用 spring boot 服务器要求_mysql_32

  • 然后退出保存
    就是完全退出exit, 不会进行session保存了。
    , 在窗口中键入Ctrl+a 键,再按下 d 键,就可以退出 SSH 登录,退出之后不会影响 screen 程序的执行(也就是说我们服务器上部署的项目就会一直运行了)。
  • 补充内容
# 查看screen 进程
screen -ls
# 进入 screen 进程
如果只有一个 screen 进程,命令行输入 screen -r -d 即可
如果有多个screen, 我们可以通过它的 PID 进入screen:
screen -r -d (pid)

spring boot实现多服务之间的调用 spring boot 服务器要求_mysql_33