前提条件

准备一台干净的服务器,服务器重装系统,
系统建议:CentOS 7.9
重新在阿里云上安装操作系统步骤:
Linux 操作-vi编辑器


yum 安装jdk1.8

本次搭建的环境,开发使用的是Java语言开发,所以需要安装jdk,我们本次使用jdk1.8版本。

  1. yum install -y java-1.8.0-openjdk*

安装成功之后,有对应的提示。
image.png
检查jdk的版本。

  1. java -version

image.png

安装Mysql数据库并初始化数据

本次使用的数据库版本 Mysql5.7,所以需要在服务器上安装对应的Mysql数据库。

下载 mysql 官方源

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

image.png

安装mysql 源

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

image.png

安装Mysql 服务器

  1. yum install -y mysql-community-server --nogpgcheck

执行命令之后,会自动从网上进行下载安装,根据网络的快慢,时间不一定。
image.png
下载完成之后,有对应的提示。
如果安装过程中,网络比较慢,可以 使用 Ctrl+C 中断操作,重新执行上面的安装命令。
image.png

启动mysql服务

  1. systemctl start mysqld.service

image.png
启动过程中,如果没有报错,就是启动成功。

获取Mysql服务器的随机密码

在使用yum命令安装的时候,会自动生成一个默认的root账号的密码;这里说明一下,每个人的随机密码都不一样。

  1. grep "password" /var/log/mysqld.log

image.png
请讲上面过滤出来的密码记录下来。在下一步中会使用到。

命令行登录数据库

使用 mysql 命令在命令中登录数据库。

  1. mysql -u root -p

image.png
这里需要特别说明一下: 输入密码的时候 界面中是看不到的, 复制上一步中获取的密码,粘贴进来,完成之后按下回车键。
image.png
如果密码输入正确 就可以进入到数据库内。如果输入错误,请重新 执行 mysql -u root -p 重新粘贴密码并按下回车。

开启数据库的远程连接权限

默认的数据库不支持远程连接,也就是说通过navicat工具还连不上数据库,所以在Mysql数据库中添加root账号的远程登录权限。

修改密码规则

默认的密码规则需要特殊字符,并且在低版本的navicat上不支持。所以修改密码规则

  1. set global validate_password_policy=0;
  2. set global validate_password_length=1;

image.png
执行成功,有对应的提示,如果报错

  1. 检查是否在数据库内,image.png
  2. 检查sql语句是否拼错,在数据库内的话 重新执行上面两句Sql, 注意每条sql后面 ;

    更改root账号的密码

    默认的root账号密码是上面安装过程中随机生成的,密码不好记。所以要修改,这里的密码必须改为 fanmao888 因为后面部署的应用,应用中的配置文件中密码已经写死了,就是 fanmao888
    1. ALTER USER 'root'@'localhost' IDENTIFIED BY 'fanmao888';
    image.png

    开启root账号的远程登录权限

    此时root账号 还不支持远程登录,需要开启。 ```python grant all privileges on . to ‘root’@’%’ identified by ‘fanmao888’ with grant option;

flush privileges;

  1. ![image.png](https://cdn.nlark.com/yuque/0/2022/png/87080/1650700193480-93668781-5149-44c8-acb5-26c96a668ecf.png#clientId=uba6ebd0b-de46-4&crop=0&crop=0&crop=1&crop=1&from=paste&height=235&id=u2d7fee31&margin=%5Bobject%20Object%5D&name=image.png&originHeight=294&originWidth=1305&originalType=binary&ratio=1&rotation=0&showTitle=false&size=47568&status=done&style=none&taskId=uf23c4c98-d4ee-4894-bfbc-a6685a4bf3e&title=&width=1044)<br />更改完成之后 退出mysql
  2. ```python
  3. exit

image.png

导入数据到数据库

要搭建的电商系统有数据库,数据库中的一些基本的表现在需要导入。

开启3306 端口

将3306端口打开
https://www.yuque.com/imhelloworld/bypiud/zy3npm#LloyR

navicat 登录数据库

image.png 创建Mysql 连接,输入自己的ip地址
image.png
备注: 如果ip地址,用户名,密码都输入正确,但是还是连不上。需要服务器打开3306端口。
打开阿里云服务器端口: 参考下面文档。
https://www.yuque.com/imhelloworld/bypiud/zy3npm#LloyR

初始化数据库

在安装文件中找到 mall.sql 文件。
image.png
在Navicat上 右键 — 【运行SQL】文件
image.png
在弹出的对话框中 找到 mall.sql 文件的路径并打开。
image.png
点击【开始】,开始执行sql文件
image.png
执行成功之后,点击【关闭】即可。
重新连接或者刷新,可以看到mall 数据库中对应的数据表。
image.png

搭建API服务

首先准备好自己的文件,在部署文件/api/目录下两个文件准备好。
image.png

创建API目录

在服务器创建 /mydata/mall/api 目录 执行

  1. mkdir -p /mydata/mall/api

cd 切换到/mydata/mall/api 目录下

  1. cd /mydata/mall/api

image.png

上传代码包

将准备好的代码包上传到 /mydata/mall/api 目录下
使用 rz 命令上传
安装rz 命令

  1. yum install -y lrzsz

使用 rz 命令或者拖拽文件夹的方式 将两个文件上传 即可
image.png上传成功之后 可以看到文件
image.png

配置并部署项目

解压图片资源

图片资源都放在 upload.zip 压缩包中,将压缩包进行解压。
安装unzip 命令

  1. yum install -y unzip

解压压缩包。

  1. unzip upload.zip

解压成功之后,可以看到目录
image.png

启动项目

在 /mydata/mall/api目录下执行命令,启动 api 服务

  1. nohup java -jar newbee-mall-api-2.0.0-SNAPSHOT.jar > mall.log 2>&1 &

启动成功之后,可以看到对应的进程号。
image.png

查看接口

阿里云服务器的同学需要将服务器端口打开。

开启28019 端口

参考文档开启28019 端口
性能测试

浏览器访问接口服务

在浏览器中打开地址栏: 输入
http://自己的公网ip:28019/swagger-ui.html#/
可以看到swager文档,说明接口服务器已经搭建好。
image.png

搭建前端

创建前端目录

前端代码存放在 /mydata/mall/vue 目录中

  1. mkdir -p /mydata/mall/vue

切换到 /mydata/mall/vue

  1. cd /mydata/mall/vue

image.png

上传前端包文件

image.png
将dist.zip 文件夹 上传到 /mydata/mall/vue/ 目录下。
可以使用 拖拽的方式,将文件放在 /mydata/mall/vue 目录下。
image.png
上传成功,可以看到对应的文件。

解压文件

使用unzip 命令解压 dist.zip

  1. unzip dist.zip

image.png

修改前端配置文件

需要将 js 文件中的ip地址改为自己的IP地址
下面的命令需要大家先复制到记事本中,之后 修改 再运行。

  1. sed -i 's/192.168.3.190/服务器公网ip/g' /mydata/mall/vue/dist/js/app.a79505cd.js
  2. sed -i 's/192.168.3.190/服务器公网ip/g' /mydata/mall/vue/dist/js/app.a79505cd.js.map

将命令中的服务器公网ip改为自己的具体的ip值。
image.png
image.png
如果改错了。 删除 dist 目录,重新再解压一份 dist.zip ,重新再改。

安装nginx

前端应用主要运行在 nginx 中间件,所以需要安装nginx。

添加yum 源

  1. rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm

image.png

安装nginx

使用 yum 命令安装nginx

  1. yum install -y nginx

image.png

启动nginx 服务

  1. systemctl start nginx.service

image.png
没有报错,说明服务已经启动成功。

设置开机自启动

  1. systemctl enable nginx.service

image.png

配置nginx

需要将前端文件配置到ngnix服务中才可以运行。

进入nginx 配置文件夹

nginx的配置文件在 /etc/nginx/conf.d/

  1. cd /etc/nginx/conf.d/

image.png

删除默认配置

使用 rm 命令删除

rm -rf default.conf

image.png

创建mall 前端配置

创建mall.conf 文件
使用 vi命令

vi /etc/nginx/conf.d/mall.conf

文件中输入,将 服务器公网ip 替换为自己的服务器公网ip

server {
    listen       80;
    server_name 服务器公网ip;

    root /mydata/mall/vue/dist;

    location / {
        try_files $uri $uri/ @router;
        index  index.html index.htm;
    }

    location @router {
            rewrite ^.*$ /index.html last;
        }

}

image.png

编写完成之后,按下 :wq 保存并退出。
使用cat 命令再次检查文件是否编写正确。

cat /etc/nginx/conf.d/mall.conf

image.png

重载nginx 查看前端

配置完成之后,重载nginx

nginx -s reload

image.png

查看前端页面

在浏览器中 打开 http://你的ip地址
可以看到自己前端页面。
image.png

搭建后端

创建项目目录

后端服务

 mkdir /mydata/mall/admin

切换到后端目录

cd /mydata/mall/admin

image.png

上传后端应用程序

image.png
将文件传到服务器的 /mydata/mall/admin 目录下
image.png

启动后端服务

执行命令启动

nohup java -jar newbee-mall-manage-2.0.0-SNAPSHOT.jar >mall.log 2>&1 &

image.png
启动成功之后,查看服务

打开后端界面

开启服务器27019端口

在服务器上开启27019 端口
端口开启方式
性能测试

访问界面

浏览器中输入 http://你的ip:27019/admin/login
image.png
默认的管理员账号:
admin/123456
可以登录。


服务器重启之后怎么启动服务

启动api服务器

cd /mydata/mall/api/

nohup java -jar newbee-mall-api-2.0.0-SNAPSHOT.jar  > mall.log  2>&1 &

启动后端管理

cd /mydata/mall/admin/

nohup java -jar newbee-mall-manage-2.0.0-SNAPSHOT.jar >mall.log 2>&1 &

分别访问:
api 地址: http://自己的公网ip:28019/swagger-ui.html#/
前端: http://自己的公网ip
后端地址: http://你的ip:27019/admin/login