本地环境搭建
基础设施
提前将mysql,rabbitmq,redis,es等基础服务准备好,mq和es使用非k8s部署中docker容器部署《基础设施部署》
api
clone源码
部署api需要两个仓库:
1、api源码:
2、配置文件
clone相应的分支:
git clone '你的api仓库地址' --branch 7.3.0_dev
git clone '你的config仓库地址' --branch 7.3.0_dev
配置maven私服
推荐使用阿里私服,请参考"配置maven私服"
配置中心
一、修改配置文件
1、修改 config/application-dev.yml
中数据库
、elasticsearch
、redis
、rabbitmq
等信息,具体请参考:配置中心说明
本地默认部署dev模式
application.yml和application-dev.yml中,两个文件为覆盖关系,配置中心优先读取application-dev.yml中配置信息,没有的去application.yml中读取。
2、修改配置中心
打开业务源码中,配置中心(config-server)的application.properties
位置:config-server/src/main/resources/application.properties
修改配置文件所在目录:
server.port=8888
#默认采用本地配置
spring.profiles.active=native
#设置为配置文件(b2b2c-config所在目录)
spring.cloud.config.server.native.search-locations=/yourpath/config
二、启动config-server
请启动config server的 SpringBootApplication 类,位置为:
config-server/src/main/java/com/enation/app/javashop/configserver/ConfigServiceApplication.java
访问如下地址确认配置是否正确;
http://localhost:8888/base-api/dev
三、设定配置中文位置
通过上述的步骤,我们已经建立了配置中心,接下来需要在api中指定配置中心的位置。
可以在每个api的bootstrap.yml文件中指定,也可以通过config目录中的bootstrap.yml统一指定
spring boot会优先读取runtime的同级config目录中的bootstrap.yml
我们这里采用统一修改config/bootstrap.yml的方式:
spring:
cloud:
config:
#指定配置中心的位置
uri: http://localhost:8888
#使用dev模式,即访问 /dev/{app-name}
profile: dev
label: master
通过刚才的步骤,配置中的地址默认为: l http://localhost:8888
安装数据
执行api工程中的 sql/database.sql
启动API
一、启动api
分别启动:base-api,seller-api,manager-api,buyer-api,consumer,对应启动类为:
基础api:
base-api/src/main/java/com/enation/app/javashop/base/BaseApiApplication.java
买家端api:
buyer-api/src/main/java/com/enation/app/javashop/buyer/BuyerApiApplication.java
卖家端api:
seller-api/src/main/java/com/enation/app/javashop/seller/SellerApiApplication.java
管理端api:
manager-api/src/main/java/com/enation/app/javashop/api/ManagerApiApplication.java
二、验证swagger
基础api:
http://localhost:7001/doc.html
买家api:
http://localhost:7002/doc.html
卖家api:
http://localhost:7003/doc.html
卖家api: