文章目录
1、项目拆解
1.1 项目简介
基于 Java 11 + SpringCloud + OpenFeign 的微服务框架的商城项目;
其中间件含MySQL、Nacos、Sentinel、Seata、RabbitMQ等。
(es后续学习再补充)
1.2 模块详情
-
item-service:商品服务
-
cart-service:购物车服务
-
pay-service:支付服务
-
trade-service:交易服务
-
user-service:用户服务
-
hm-gateway:网关服务
-
hm-api:远程调用API
-
hm-common:公共模块
-
hm-config:Nacos 共享配置
1.3 结构图
2、部署步骤
按顺序依次部署…
2.1 Mysql
开放端口:3306
docker run -d \
--name mysql \
-p 3306:3306 \
-e TZ=Asia/Shanghai \
-e MYSQL_ROOT_PASSWORD=123 \
-v /root/mysql/data:/var/lib/mysql \
-v /root/mysql/conf:/etc/mysql/conf.d \
-v /root/mysql/init:/docker-entrypoint-initdb.d \
--network hm-net\
mysql
2.2 Nacos
开放端口:8848、9848、9849
后台地址:http://IP地址:8848/nacos/
docker run -d \
--name nacos \
--env-file ./nacos/custom.env \
-p 8848:8848 \
-p 9848:9848 \
-p 9849:9849 \
--restart=always \
nacos/nacos-server:v2.1.0-slim
2.3 Sentinel
开放端口:8090
后台地址:http://IP地址:8090/
java -Dserver.port=8090 -Dcsp.sentinel.dashboard.server=localhost:8090 -Dproject.name=sentinel-dashboard -jar sentinel-dashboard.jar
2.4 Seata
载入配置、导TC数据库、TA数据表
开放端口:8099、7099
后台地址:http://IP地址:7099/
docker run --name seata \
-p 8099:8099 \
-p 7099:7099 \
-e SEATA_IP=你的IP地址 \
-v ./seata:/seata-server/resources \
--privileged=true \
--network hm-net \
-d \
seataio/seata-server:1.5.2
2.5 RabbitMQ
开发端口:15672、5672
后台地址:http://IP地址:15672/
docker run \
-e RABBITMQ_DEFAULT_USER=itheima \
-e RABBITMQ_DEFAULT_PASS=123321 \
-v mq-plugins:/plugins \
--name mq \
--hostname mq \
-p 15672:15672 \
-p 5672:5672 \
--network hm-net\
-d \
rabbitmq:3.8-management