白洞版 · 环境搭建文档
白洞版环境搭建
Section titled “白洞版环境搭建”微服务本地环境:中间件(可用 docker-compose)→ 导库 → Nacos 环境变量 → 按序启动服务 → 前端打到网关。本机建议 16G 内存。文中 IP、账号仅为示例。
1. 组件版本
Section titled “1. 组件版本”| 组件 | 说明 |
|---|---|
| JDK | 17 |
| Maven | 3.9+ |
| MySQL | 8.0 |
| Redis | 5.0+ |
| Nacos | 与 compose 模板一致 |
| Elasticsearch | 7.x |
| RocketMQ / MongoDB | 按中间件清单 |
| Node.js | 云端 uni-app 要求 20.19+ 或 22.12+,pnpm ≥ 8 |
| Git / IDEA | IDEA -Xmx2048m;单个微服务可 -Xmx512m |
已拉取 mall4cloud、mall4cloud-doc。不必一次开全量服务。
2. 中间件与数据库
Section titled “2. 中间件与数据库”推荐用文档仓库「中间件 docker-compose 一键安装」拉起 MySQL、Redis、Nacos、ES、MQ、MongoDB、MinIO 等。把模板 IP(如 192.168.1.41)换成自己的机器 IP 后授权并启动:
chmod -R 777 ./rocketmq/broker/logs ./rocketmq/broker/store ./elasticsearch/datachmod -R 666 ./minio/datadocker compose up -d --build镜像大约 7G,需等待。控制台(把 IP 换成自己的;模板密码 hn02le.34lkdLKD 必须改掉):
| 组件 | 访问 |
|---|---|
| MySQL | 3306,root |
| Redis | 6379 |
| Nacos | http://IP:8080/index.html,nacos |
| XXL-JOB | http://IP:8090/xxl-job-admin,admin |
| MinIO | http://IP:9001 |
| RocketMQ 控制台 | http://IP:8180 |
Prometheus / Grafana / Alertmanager 只允许内网。自建中间件时端口、账号必须与配置中心一致。
初始化 SQL:先执行 compose 的 mysql/initdb 里 mall4cloud_job.sql、mall4cloud_nacos.sql、mall4cloud_seata.sql;再执行文档 initDb 中 admin / auth / biz / flow / group / marketing / order / payment / product / seckill / user 等库。并导入 es 目录索引(商品、订单、退款、门店等)。
配置走环境变量,优先不要全局替换 IP:
NACOS_HOST=<地址>NACOS_PORT=<8848 或 K8s 的 30030>NACOS_NAMESPACE=<命名空间>NACOS_PASSWORD=<密码>按需覆盖服务端口:
MALL4CLOUD_PORT=<http端口>MALL4CLOUD_DUBBO_PORT=<dubbo端口>不设置时使用各模块 application.yml 默认端口。多人本机调试用不同 namespace,避免互相注册。不要把示例 IP 提交进仓库。
3. 启动 Java
Section titled “3. 启动 Java”IDEA Open 打开 mall4cloud 根工程,等 Maven 完整索引结束。
推荐顺序:
mall4cloud-gatewaymall4cloud-authmall4cloud-admin- 再按联调需要:product → order → payment → user → marketing → group → seckill → flow → search → biz
验证:
- Nacos 中对应实例为 UP
- 网关可访问基础路由并完成登录
- 至少一条业务链路可通(商品查询或下单)
内存不足时只开当前要调试的服务。跨服务断点优先同时开网关与目标业务服务。
各前端仓库根目录:
pnpm install若不用 pnpm,去掉 package.json 里 preinstall: npx only-allow pnpm 以及 engines.pnpm。
.env.development 的 API 指向网关(常见 8000,以 bootstrap.yml 为准),不要写某个业务服务端口。本机 IP 用 ipconfig(下例 192.168.1.195)。
4.1 mall4cloud-uniapp
Section titled “4.1 mall4cloud-uniapp”VITE_APP_BASE_API = 'http://192.168.1.195:8000'VITE_APP_WEBSOCKET_URL = 'ws://192.168.1.195:8000'VITE_APP_MP_APPID = '你的公众号appid'微信内 H5 走 JSAPI,必须配公众号 appid;浏览器 H5 走 H5 支付。小程序 appid 写在 src/manifest.json 的 mp-weixin。H5 端口可改 manifest.json → h5.devServer.port。
4.2 mall4cloud-platform / mall4cloud-multishop
Section titled “4.2 mall4cloud-platform / mall4cloud-multishop”VITE_APP_BASE_API 指向网关;IM 用 VITE_APP_WS_IM_API(ws/wss)。pnpm dev,vite 端口见各仓 vite.config.js。
4.3 mall4cloud-pc / mall4cloud-station
Section titled “4.3 mall4cloud-pc / mall4cloud-station”同样打网关。门店端独立仓库、独立站点,不与 H5 混部。