导入准备
前言
因微服务项目需要消耗较多的电脑运行内存,所以电脑运行内存应不低于8GB,推荐配置16GB。导入教程使用的后端IDE为IntelliJ IDEA,前端IDE为JetBrains WebStorm。
安装JDK
因为项目用到了JDK 8的一些特性,所以JDK最低版本不能低于8。
JDK 8官方下载地址:https://www.oracle.com/technetwork/java/javase/downloads。
安装Node.js
前端项目本地开发时,需要NodeJS作为JavaScript运行环境。Node.js下载地址:http://nodejs.cn/download/,直接安装即可。Node.js集成了npm,所以安装好Node.js后npm就可以使用了。
安装Redis
项目缓存数据库使用的是Redis,所以在导入项目前需先安装Redis。
Redis Windows版本下载地址:https://github.com/MicrosoftArchive/redis/releases。Mac用户推荐使用Docker安装。
安装MySQL
项目数据库采用MySQL社区版,版本为5.7.x。下载地址:https://dev.mysql.com/downloads/windows/installer/5.7.html。
至此,系统环境准备完毕,后面开始导入后端系统。
导入后端
下载导入
因为我电脑上已经安装了Git,所以我直接在桌面上通过以下命令克隆项目:
1 | git clone https://github.com/wuyouzhuguli/FEBS-Cloud.git |
没有安装Git的用户,可以到仓库下载zip包然后解压。
克隆后,桌面上多出一个FEBS-Cloud文件夹:
打开IntelliJ IDEA,选择Open or Import:
选择刚刚克隆的项目FEBS-Cloud目录下的febs-cloud模块的pom.xml:
然后点击open,选择Open as Project:
然后等待maven下载完依赖并且IDEA索引建立完毕。导入完毕后,IDEA右下角会出现一个弹窗,选择show run configurations in services,IDEA会多出个Services窗口:
这里显示了所有微服务的启动入口。
配置环境变量
修改IDEA环境变量,点击IDEA的Edit Configurations…:
然后点击每个启动类,右侧的Environments variables一栏里填写(直接复制下面的值,黏贴到Environments variables里即可):
1 | mysql.url=127.0.0.1;redis.url=127.0.0.1;febs-gateway=127.0.0.1;febs-admin=127.0.0.1;nacos.url=127.0.0.1;febs-tx-manager=127.0.0.1 |
注意:必须每个微服务启动入口都配置,以防环境变量缺失导致后续项目启动失败!
安装Lombok
因为项目里使用了Lombok注解,所以我们还需要在IDEA里安装Lombok插件。在IDEA里双击shift按键,然后输入plugins:
然后搜索Lomnok插件,安装后重启IDEA即可:
Nacos配置
通过https://github.com/alibaba/nacos/releases链接可以下载Nacos的最新发行版,这里我们选择1.2.1版本的Nacos:
下载解压后:
bin目录下为启动和关停脚本,conf下为nacos的配置文件,target目录下为nacos的fat jar。
修改conf/application.properties配置文件,将应用端口改为8001:
1 | server.port=8001 |
使用Navicat新建一个MySQL数据库,名字为febs_nacos:
然后导入febs_nacos.sql SQL脚本,导入后,数据库表如下图所示:
接着修改nacos解压包目录下conf/application.properties配置文件,添加如下配置:
1 | spring.datasource.platform=mysql |
spring.datasource.platform指定数据库的类型,这里为mysql,db.num指定数据库的个数(nacos支持多数据源,比如MySQL主从),剩下的配置为数据库配置。
修改好application.properties配置后,Windows用户双击bin/startup.cmd启动nacos服务端;Mac用户执行如下命令:
1 | sh bin/startup.sh -m standalone |
启动后使用浏览器访问:http://localhost:8001/nacos:
用户名febs密码123456,然后就可以看到微服务项目的配置列表了:
导入SQL
使用Navicat新建一个名称为febs_cloud_base的数据库:
然后导入febs_cloud_base.sql脚本。导入后,库表如下所示:
启动项目
到这一步时,请确保MySQL,Redis已经启动。
在启动项目前,需要留意一下数据库用户名密码是否正确。febs-auth、febs-server-system、febs-server-test、febs-server-job、febs-server-generator和febs-tx-manager模块配置了数据库,配置文件里数据库用户名为root,密码为123456。如果你的数据库配置不是这个的话,需要到Nacos控制台修改相应的配置。
比如我要修改febs-auth模块的数据库配置:
确保数据库配置都正确后,我们逐一启动febs微服务。在IDEA service窗口下分别启动如下项目:
- FebsTxManagerApplication;
- FebsAdminApplication;
- FebsAuthApplication;
- FebsServerSystemApplication;
- FebsGatewayApplication。
微服务启动成功与否,可以通过控制台是否打印banner判断,比如FebsAuthApplication启动成功后,控制台打印如下banner:
1 | ----------------------------------------- |
所有微服务启动后,可以通过Nacos控制台:http://localhost:8001/nacos观察微服务注册情况:
注意:febs-tx-manager分布式事务管理器和febs-admin微服务监控中心并没有注册到nacos中,所以上面服务列表中只有febs-auth、febs-gateway和febs-server-system。
使用浏览器访问:http://localhost:8401观察微服务状态(登录用户名febs,密码123456):
接着我们开始导入前端项目。
导入前端
为了方便,我直接在桌面上通过git bash克隆后端项目:
1 | git clone https://github.com/wuyouzhuguli/FEBS-Cloud-Web.git |
克隆后,桌面上多出一个FEBS-Cloud-Web文件夹:
打开JetBrains WebStorm,点击Open:
选择刚刚克隆的FEBS Cloud Web文件夹:
点击Open导入项目。导入后,打开npm窗口,双击download下载依赖:
安装依赖如果出现失败,大概率是因为有些依赖地址访问超时,可以科学上网后再试。
安装完依赖后,点击npm模块的local按钮,启动前端项目:
点击上面任意一个地址即可:
输入用户名mrbird密码1234qwer和验证码登录:
enjoy。