如何springboot+mybatis+vue的项目部署到linux服务器上(纯小白向)

前端时间在git上拉了一个音乐网站的开源项目,把这个项目里面的各种坑填了之后,就想着能不能把这个项目部署到服务器上,当时查看了各种教程,要么是讲的不够详细,要么就是有些小坑没有解决,需要花费额外的功夫去解决,现在有时间腾出手,就把这些问题都详细的梳理一下,以便后续查看。

     我这里选择的是centos虚拟机,主要是可以白嫖,如果有钱的话也可以上一台云服务器,虚拟机的搭建网上有很多教程,这里我就不赘述了。我这边分享一个安装虚拟机时需要的镜像文件,有需要的可以自取

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

一、环境的搭建

     我这个项目是springboot+vue+nginx+mybatis的简单项目,所以需要安装的环境也很简单,就是jdk+maven+mysql,由于centos操作不便,后续搭建环境都使用mobaxterm操作,习惯用xshell的可以用xshell,但是个人认为mobaxterm更好用一点

    1.1安装jdk1.8


         链接:https://pan.quark.cn/s/3ee5cff2b401
         提取码:9WHz

     有钻研精神的可以去官网找最新的jdk版本尝新,我这里的是jdk-8u212-linux-x64版本,下载压缩包后将压缩包放到usr/local下,其实放在哪个文件夹底下没有什么明确的规定,只要后续配置的时候把对应的文件路径配置正确就可以了。

[root@localhost ~]cd /usr/local

在虚拟机上进入到压缩包所在文件夹 ,解压压缩包,文件名可以输入头几个字母然后tab键补全

[root@localhost]tar -xvzf jdk-8u212-linux-x64.tar.gz

解压完成后,文件夹下多出一个jdk的文件夹,就是成功了

 1.2 配置jdk环境

安装好jdk后需要我们进行环境配置才能让jdk生效,这一步和windows环境配置环境类似,不过linux环境配置环境变量要简单的多,只需要进入系统环境变量配置文件profile中配置就可以了,后续maven的环境变量也是在这里配置。

使用vim编辑编辑器命令打开profile文件

[root@localhost ~]vim etc/profile

如果出现command not found,就是这个命令没有安装,可以安装vim编辑器

[root@localhost ~ ] yum -y install vim*

也可以直接使用vi命令,vim是vi的进阶版,功能更强大,但在基础功能的使用上没什么区别

[root@localhost ~]vi etc/profile

打开文件后,按i(insert的缩写)进入编辑模式,将下方配置复制到配置文件最底下,java_home后面配置的文件夹要改成你们jdk解压的文件夹哈

export JAVA_HOME=/usr/local/jdk1.8.0_212

export JRE_HOME=${JAVA_HOME}/jre

export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib:$CLASSPATH

export JAVA_PATH=${JAVA_HOME}/bin:${JRE_HOME}/bin

export PATH=$PATH:${JAVA_PATH}

 复制完了之后,按ESC退出编辑模式,输入:wq!(冒号不要漏了)保存文本编辑,按enter键退出。退出后使用cat命令查看是否保存成功

[root@loaclhost ~]cat etc/profile

 然后输入命令java -version查看java版本,出现以下截图说明安装成功

 刚刚查看版本信息的时候出现了java:command not found的问题,重启了一下mobaxterm就好了,也不知道是因为什么,第一次遇到,遇到同样问题的小伙伴可以重启下试试。

1.3配置maven环境

maven的环境配置和jdk一样,也是解压压缩包,然后在profile里配置maven路径。

这里穿插一下我对于这个环境配置的理解,我们这里配置路径跟我们在java代码里访问静态资源时配置资源路径是一样的,是为了告诉电脑,我们需要运行的代码文件夹在什么地方,由于每台机器的磁盘名字,安装包的路径都不一样,于是在代码里用JAVA_HOME来作为公共变量进行解耦。

好了,下面进入正题,我这里准备了3.6.0的maven包,想要别的版本的可以自己去官网下载
链接:https://pan.quark.cn/s/225b18e7c411
提取码:zq8D

先把maven的压缩包上传到usr/local,操作步骤和jdk包一样

[root@localhost ~]cd /usr/local

解压压缩包,压缩包的名字是你上传到服务器的压缩包的名字,不想打字可以用TAB补全

[root@localhost]tar -xvzf apache-maven-3.6.0-bin.tar.gz

解压后把下方配置复制到etc/profile里,后方路径是你解压安装包的路径

export MAVEN_HOME=/usr/local/apache-maven-3.6.0
export PATH=${MAVEN_HOME}/bin:${PATH}

配置完成后保存,输入命令使配置立即生效

[root@localhost]source etc/profile

输入指令查看mvn是否安装成功

[root@localhost]mvn -version

 出现这样的就是安装成功了

1.4安装tomcat


链接:https://pan.quark.cn/s/72abb1387e81
提取码:AAc1

把tomcat的包放到usr/local下,解压

[root@localhost]tar -xvzf apache-tomcat-9.0.56-bin.tar.gz

解压后修改名字,我有点偷懒了,这个名字是你们解压后的文件夹的名字

[root@localhost]mv apache-tomcat-9.0.56 tomcat

修改名字后去bin目录下启动

[root@localhost]cd tomcat/bin
[root@localhost]./startup.sh

 出现下图就是开启成功了,这个时候就可以通过外网访问tomcat界面了

 我们可以用本机浏览器访问tomcat查看是否启动成功

首先查看虚拟机分配的ip地址

[root@localhost]ifconfig

 在浏览器上访问 IP:8080,如果能够访问就是成功安装并启动了

 如果长时间转圈然后无法访问,那么大概率是因为防火墙没有开放端口,我们只需要开放8080端口就可以访问了,我们是自己部署服务玩,直接将防火墙关闭就可以了。

         查看防火墙状态 systemctl status firewalld
         开启防火墙 systemctl start firewalld  
         关闭防火墙 systemctl stop firewalld 

 

 查看防火墙状态,如果出现图中running的指示,就是开启的,输入关闭防火墙命令,再查看状态,就会变成dead,防火墙就关闭了。这个时候我们就可以访问tomcat了。

1.5安装mysql以及配置

首先查看虚拟机上是否安装过mysql ,如果安装过就要把原来的mysql删除干净,不然启动很有可能报错,如果是第一次安装虚拟机可以跳过

下面这篇文章讲的很详细,可以跟着删除

http://t.csdnimg.cn/AYEp4

删除组件的时候,如果使用rpm -ev提示无法删除 ,可以使用yum remove xxx来删除组件

下载mysq安装包

wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm

截图就是下载好的样子 

安装mysql 

yum -y install mysql57-community-release-el7-10.noarch.rpm

安装mysql服务,网速慢得话时间会比较长,耐心等待

yum -y install mysql-community-server

 

我这里是没有遇到问题,但是我看到别的教程里会出现Unable to find a match: mysql-community-server错误,我也顺便把解决方法贴过来,输入下方指令

 yum module disable mysql

启动mysql服务

 systemctl start mysqld.service

查看状态

service mysqld status

更改mysql密码,查看msql临时密码,临时密码是数字符号英语的组合,看起来很奇怪,但是没事,复制登录就可以了

   # cat /var/log/mysqld.log |grep 'password'

修改mysql默认密码

先登录mysql数据库再修改密码

 # mysql -uroot -p回车,复制密码

通过如下命令修改,可设置简单密码

# set global validate_password_policy=0;

# set global validate_password_length=1;

修改密吗

mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'root';

 

设置root账户可远程连接, 设置root用户Host为%

Grant all on *.* to 'root'@'%' identified by 'root' with grant option;
 
flush privileges;

然后查看user表看是否赋予权限成功

select user,host,authentication_string from mysql.user;

这样就是赋权成功,可以远程链接数据库了

二、部署服务

2.1 后端服务部署

环境搭建完毕,开始部署后端,我这里得开发工具是idea,直接用idea得maven打包,打包前确认application.properties 里数据库的地址是否配置正确

 点击maven clean 清理后点击maven install,然后等待打包完成

打包后会有一个target的文件夹

这就是我们打完的软件包,使用工具将这个文件夹发送到linux服务器,我放到了home/music-server文件夹下

使用命令行进入到target文件夹下,这时候可以看到你的服务的jar包

cd home/music-server/target 

 使用jar命令开启服务

#普通启动,退出启动界面会停止服务

#java -jar  music-0.0.1-SNAPSHOT.jar

#后台运行

#nohup java -jar  music-0.0.1-SNAPSHOT.jar > music.txt &

2.2前端服务部署 

将前端任务打包

进入到项目根目录进行打包,新建终端 ctrl + shift + `,然后进入到项目根目录进行打包

我这里是多环境配置,所以是npm run dev

npm run build

 打完包后项目里会出现一个dist文件夹,然后将文件夹复制到服务器上

我这里放在home/music-manager文件夹下,前端服务就已经部署好了,我这里选择安装nginx来进行负载均衡和转发访问

2.3 nginx部署

nginx的安装有很多方式,我这里选择的是用压缩包来安装nginx,如果有兴趣的朋友可以查找别的安装方式。
链接:https://pan.quark.cn/s/4cbd957ec63e
提取码:JPaE

将压缩包上传到虚拟机,然后解压压缩包

tar -xvzf  nginx.tar.gz

进入到nginx的conf目录里,修改nginx.conf配置,把配置里local的地址改成刚刚前端文件放置的文件夹

然后保存,开启nginx就可以了。

nginx命令

service  nginx start 

service nginx  stop

service nginx restart

ok,服务已经部署好了,输入ip地址就已经访问服务了。大功告成。

  • 24
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值