跨境多商户版 · 部署指南文档
跨境多商户版部署指南
Section titled “跨境多商户版部署指南”三端 jar 容器化,Nginx 按用户 / 商家 / 平台分 HTTPS 站点。跨境回调只走 443。推荐全程 Docker。文中域名、IP、密码均为示例,上线前必须替换。
1. 生产环境组件
Section titled “1. 生产环境组件”| 组件 | 版本 |
|---|---|
| JDK(镜像内) | 17 |
| MySQL | 8.0 |
| Redis | 5.0+ |
| Elasticsearch | 7.x |
| XXL-JOB | 3.0.0 |
| Docker / Compose | 当前稳定版 |
先在开发机把后端打好包,再放到生产机。服务器需已安装 docker 与 docker compose。
2. 部署目录
Section titled “2. 部署目录”mall4j-shop├─ mysql/initdb # 初始化 SQL├─ mysql/my.cnf├─ mysql/data # 数据卷,禁止删除├─ yami-shop-api # 用户端 jar├─ yami-shop-multishop # 商家端 jar├─ yami-shop-platform # 平台端 jar├─ nginx/conf.d / html / ssl└─ docker-compose.yml
- SQL:跨境 BBC 仓库编号脚本 →
mysql/initdb(首次 Compose 自动导入)。 - jar:
mvn clean package -DskipTests后放入三个 SNAPSHOT jar。 - 前端 dist →
html/h5、html/pc、html/multishop、html/platform、html/ms。 - 证书 →
nginx/ssl。
Compose 注入 MySQL / Redis / ES / IM。非 Docker 改 application-prod.yml。mysql/data 禁止删除。
cd mall4j-shopdocker compose up -d --build
80/443 对公网;MySQL/Redis/ES/IM 仅内网。替换示例密码(含模板 hn02le.34lkdLKD)。
4. Nginx 与 SSL
Section titled “4. Nginx 与 SSL”conf.d 通常包括 api、multishop、platform、h5、pc、ms、im、minio、xxl-job。每个站点:
listen 80→return 301 https://$host$request_urilisten 443 ssl http2,证书在nginx/ssl- 静态站
root /usr/share/nginx/html/<端> - 后台
/apisrewrite 后反代对应 Java 容器 - 生产屏蔽
/apis/doc.html
server { listen 443 ssl http2; server_name cbec-bbc-multishop.example.com; ssl_certificate ssl/your.pem; ssl_certificate_key ssl/your.key; ssl_protocols TLSv1.2 TLSv1.3;
location / { add_header Strict-Transport-Security "max-age=63072000; includeSubdomains; preload"; proxy_pass http://mall4j-cbec-bbc-vs; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; } location /apis { rewrite ^/apis/(.*)$ /$1 break; proxy_pass http://mall4j-cbec-bbc-multishop:8113; proxy_cookie_path / "/; httponly; secure; SameSite=Lax"; } location /apis/doc.html { return 404; }}用户 API:
location / { proxy_pass http://127.0.0.1:8112; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;}支付、报关、物流 webhook 的公网 URL 必须与证书域名一致。H5/PC 用 try_files $uri $uri/ /;。
各端 .env.production 指向 HTTPS 后再 build,产物放入 html 对应子目录。小程序 request 合法域名同步更新。
6. 裸 jar(不推荐)
Section titled “6. 裸 jar(不推荐)”分别启动三个 jar,-Dspring.profiles.active=prod。Nginx proxy_pass 改为内网 IP;XXL-JOB 单独部署。