chore: update byhlc112 deployment domains

This commit is contained in:
danaisuiyuan
2026-06-04 09:01:52 +08:00
parent 5762f4e762
commit 6b940e424c
17 changed files with 154 additions and 96 deletions

View File

@@ -62,32 +62,22 @@ set -eu
CONFIG_FILE=/usr/share/nginx/html/static/configs.js
[ -f "$CONFIG_FILE" ] || exit 0
escape_sed() {
printf '%s' "$1" | sed 's/[\/&]/\\&/g'
js_escape() {
printf '%s' "$1" | awk '{ gsub(/\\/, "\\\\"); gsub("\047", "\\\047"); printf "%s", $0 }'
}
replace_js_string() {
key="$1"
value="$2"
[ -n "$value" ] || return 0
sed -i -E "s#(${key}:[[:space:]]*)'[^']*'#\1'$(escape_sed "$value")'#" "$CONFIG_FILE"
}
mkdir -p "$(dirname "$CONFIG_FILE")"
replace_js_number() {
key="$1"
value="$2"
[ -n "$value" ] || return 0
sed -i -E "s#(${key}:[[:space:]]*)[0-9]+#\1${value}#" "$CONFIG_FILE"
cat > "$CONFIG_FILE" <<EOF
window.configs = {
TITLE: '$(js_escape "${INTEGRAL_TITLE:-}")',
BASE_URL: '$(js_escape "${INTEGRAL_API_PUBLIC_URL:-}")/api',
IMG_URL: '$(js_escape "${INTEGRAL_IMG_PUBLIC_URL:-}")',
H5_URL: '$(js_escape "${INTEGRAL_H5_PUBLIC_URL:-}")',
sn_id: ${INTEGRAL_SN_ID:-0},
appStr: '$(js_escape "${INTEGRAL_APP_STR:-}")'
}
replace_js_string TITLE "${INTEGRAL_TITLE:-}"
replace_js_string BASE_URL "${INTEGRAL_API_PUBLIC_URL:-}/api"
replace_js_string IMG_URL "${INTEGRAL_IMG_PUBLIC_URL:-}"
replace_js_string H5_URL "${INTEGRAL_H5_PUBLIC_URL:-}"
replace_js_number sn_id "${INTEGRAL_SN_ID:-}"
replace_js_string appStr "${INTEGRAL_APP_STR:-}"
EOF
SH
EXPOSE 80

View File

@@ -9,7 +9,7 @@ server:
crmeb:
imagePath: /usr/local/crmeb/
domain: https://lehoo6.com
domain: https://h5y2c.com
captchaOn: false
asyncConfig: true
demoSite: false

View File

@@ -11,21 +11,21 @@ REDIS_PASSWORD=change-me-redis
# ---------- H5 对外域名(浏览器可达) ----------
INTEGRAL_TITLE=宝应宏煜春商贸
INTEGRAL_API_PUBLIC_URL=https://admin.lehoo6.com
INTEGRAL_IMG_PUBLIC_URL=https://admin.lehoo6.com
INTEGRAL_H5_PUBLIC_URL=https://lehoo6.com/
INTEGRAL_API_PUBLIC_URL=https://admin.h5y2c.com
INTEGRAL_IMG_PUBLIC_URL=https://admin.h5y2c.com
INTEGRAL_H5_PUBLIC_URL=https://h5y2c.com/
INTEGRAL_SN_ID=17533260260529
INTEGRAL_APP_STR=ZFyTNQTWEkCBbyhlc1120529
INTEGRAL_CONTRACT_PAGE=10012
# ---------- 宿主机暴露端口 ----------
INTEGRAL_H5_PORT=18080
# webman API 直连端口(宝塔 Nginx admin.lehoo6.com → 此端口)
# webman API 直连端口(宝塔 Nginx admin.h5y2c.com → 此端口)
RESELL_API_PORT=18085
# ---------- 宿主机目录映射bind mount与原部署路径一致----------
# 寄卖商城 H5 静态文件目录(手动改 JS/configs.js 直接生效,无需重建镜像)
RESELL_H5_DIR=/www/wwwroot/lehoo6.com
RESELL_H5_DIR=/www/wwwroot/h5y2c.com
# webman 后台完整应用目录FTP 上传新 webman.bin/public/ 后 restart 容器即可更新)
# 上传图片、public/upload 等均包含在此目录内,无需单独挂载
RESELL_HOUTAI_DIR=/www/wwwroot/admin.lehoo6.com
RESELL_HOUTAI_DIR=/www/wwwroot/admin.h5y2c.com

View File

@@ -7,8 +7,8 @@
> 这套目录结构与 `deploy/docker/step1-integral` 保持一致,按 `czleilei240` 已验证方案复制而来。
> 当前默认域名假设为:
> - 寄卖商城 H5`lehoo6.com`
> - 寄卖商城后台/API`admin.lehoo6.com`
> - 寄卖商城 H5`h5y2c.com`
> - 寄卖商城后台/API`admin.h5y2c.com`
---
@@ -24,11 +24,11 @@ vim .env
vim houtai.env
# 2. 首次部署:在服务器上确保宿主机目录存在
mkdir -p /www/wwwroot/lehoo6.com
mkdir -p /www/wwwroot/admin.lehoo6.com/public/upload
mkdir -p /www/wwwroot/h5y2c.com
mkdir -p /www/wwwroot/admin.h5y2c.com/public/upload
# 3. 将 H5 静态文件同步到宿主机目录(首次 / 每次前端更新后)
rsync -av integral-resell/h5/ /www/wwwroot/lehoo6.com/
rsync -av integral-resell/h5/ /www/wwwroot/h5y2c.com/
# 4. 构建并启动edge-nginx 会在宿主机监听 80/443
docker compose --env-file .env up -d --build
@@ -44,15 +44,15 @@ docker compose --env-file .env logs -f integral-houtai
| 宿主机路径 | 容器路径 | 用途 |
|---|---|---|
| `/www/wwwroot/lehoo6.com` | `/usr/share/nginx/html` | H5 静态文件,手动改 JS 即时生效 |
| `/www/wwwroot/admin.lehoo6.com` | `/app` | webman 后台完整应用目录 |
| `/www/wwwroot/h5y2c.com` | `/usr/share/nginx/html` | H5 静态文件,手动改 JS 即时生效 |
| `/www/wwwroot/admin.h5y2c.com` | `/app` | webman 后台完整应用目录 |
| `./houtai.env` | `/app/.env` | 运行时配置,只读挂入 |
| `integral-runtime`named vol| `/app/runtime` | webman PID、session 等运行时数据 |
| 域名 | 用途 | Docker 容器端口 | 宿主机端口 | Docker 入口 |
|---|---|---|---|---|
| `lehoo6.com` | 寄卖商城 H5 | integral-h5:80 | **80/443**,直连测试 **18080** | `edge-nginx` |
| `admin.lehoo6.com` | 寄卖商城 API / 后台 | integral-houtai:**8785** | **80/443**,直连测试 **18085** | `edge-nginx` |
| `h5y2c.com` | 寄卖商城 H5 | integral-h5:80 | **80/443**,直连测试 **18080** | `edge-nginx` |
| `admin.h5y2c.com` | 寄卖商城 API / 后台 | integral-houtai:**8785** | **80/443**,直连测试 **18085** | `edge-nginx` |
---
@@ -60,8 +60,8 @@ docker compose --env-file .env logs -f integral-houtai
| 地址 | 预期 |
|------|------|
| `https://lehoo6.com/` | 寄卖商城 H5 首页 |
| `https://admin.lehoo6.com/api/...` | 寄卖商城 API |
| `https://h5y2c.com/` | 寄卖商城 H5 首页 |
| `https://admin.h5y2c.com/api/...` | 寄卖商城 API |
| `http://39.97.236.112:18080/` | H5 直连测试 |
| `ss -lntp \| grep -E ':(80\|443)'` | 看到 Docker Nginx 监听宿主机 80/443 |
@@ -85,8 +85,8 @@ docker compose --env-file .env down -v
| 位置 | 值 |
|---|---|
| `.env` INTEGRAL_API_PUBLIC_URL | `https://admin.lehoo6.com` |
| `.env` INTEGRAL_H5_PUBLIC_URL | `https://lehoo6.com/` |
| `.env` INTEGRAL_API_PUBLIC_URL | `https://admin.h5y2c.com` |
| `.env` INTEGRAL_H5_PUBLIC_URL | `https://h5y2c.com/` |
| `.env` INTEGRAL_APP_STR | `ZFyTNQTWEkCBbyhlc1120529` |
| `houtai.env` APP_SECRET | 同上 |
| `.env` INTEGRAL_SN_ID | `17533260260529` |
@@ -96,4 +96,4 @@ docker compose --env-file .env down -v
## 待确认项
- 短信当前使用阿里云签名 `宝应宏煜春商贸`、模板 `SMS_334545236`,如更换短信账号需同步更新 `houtai.env`
- 如果寄卖后台域名不是 `admin.lehoo6.com`,请统一替换 `.env.example`、README 和入口 Nginx 配置
- 如果寄卖后台域名不是 `admin.h5y2c.com`,请统一替换 `.env.example`、README 和入口 Nginx 配置

View File

@@ -96,7 +96,7 @@ services:
- "443:443"
volumes:
- ./nginx-edge.conf:/etc/nginx/conf.d/default.conf:ro
- ../ssl-cert/lehoo6.com_cert/nginx:/etc/nginx/ssl/lehoo6.com_cert:ro
- ../ssl-cert/h5y2c.com_cert/nginx:/etc/nginx/ssl/h5y2c.com_cert:ro
depends_on:
- integral-h5
- integral-houtai

View File

@@ -1,6 +1,6 @@
server {
listen 80;
server_name lehoo6.com admin.lehoo6.com jf.lehoo6.com jfadmin.lehoo6.com;
server_name h5y2c.com admin.h5y2c.com jf.h5y2c.com jfadmin.h5y2c.com;
return 301 https://$host$request_uri;
}
@@ -8,10 +8,10 @@ server {
server {
listen 443 ssl;
http2 on;
server_name jf.lehoo6.com;
server_name jf.h5y2c.com;
ssl_certificate /etc/nginx/ssl/lehoo6.com_cert/lehoo6.com.pem;
ssl_certificate_key /etc/nginx/ssl/lehoo6.com_cert/lehoo6.com.key;
ssl_certificate /etc/nginx/ssl/h5y2c.com_cert/h5y2c.com.pem;
ssl_certificate_key /etc/nginx/ssl/h5y2c.com_cert/h5y2c.com.key;
ssl_protocols TLSv1.2 TLSv1.3;
ssl_session_cache shared:SSL:10m;
@@ -32,10 +32,10 @@ server {
server {
listen 443 ssl;
http2 on;
server_name jfadmin.lehoo6.com;
server_name jfadmin.h5y2c.com;
ssl_certificate /etc/nginx/ssl/lehoo6.com_cert/lehoo6.com.pem;
ssl_certificate_key /etc/nginx/ssl/lehoo6.com_cert/lehoo6.com.key;
ssl_certificate /etc/nginx/ssl/h5y2c.com_cert/h5y2c.com.pem;
ssl_certificate_key /etc/nginx/ssl/h5y2c.com_cert/h5y2c.com.key;
ssl_protocols TLSv1.2 TLSv1.3;
ssl_session_cache shared:SSL:10m;
@@ -56,10 +56,10 @@ server {
server {
listen 443 ssl;
http2 on;
server_name lehoo6.com;
server_name h5y2c.com;
ssl_certificate /etc/nginx/ssl/lehoo6.com_cert/lehoo6.com.pem;
ssl_certificate_key /etc/nginx/ssl/lehoo6.com_cert/lehoo6.com.key;
ssl_certificate /etc/nginx/ssl/h5y2c.com_cert/h5y2c.com.pem;
ssl_certificate_key /etc/nginx/ssl/h5y2c.com_cert/h5y2c.com.key;
ssl_protocols TLSv1.2 TLSv1.3;
ssl_session_cache shared:SSL:10m;
@@ -80,10 +80,10 @@ server {
server {
listen 443 ssl;
http2 on;
server_name admin.lehoo6.com;
server_name admin.h5y2c.com;
ssl_certificate /etc/nginx/ssl/lehoo6.com_cert/lehoo6.com.pem;
ssl_certificate_key /etc/nginx/ssl/lehoo6.com_cert/lehoo6.com.key;
ssl_certificate /etc/nginx/ssl/h5y2c.com_cert/h5y2c.com.pem;
ssl_certificate_key /etc/nginx/ssl/h5y2c.com_cert/h5y2c.com.key;
ssl_protocols TLSv1.2 TLSv1.3;
ssl_session_cache shared:SSL:10m;

View File

@@ -28,13 +28,13 @@ SINGLE_FRONT_LOG_DIR=/www/wwwroot/javaapi/logs/front
SINGLE_ADMIN_LOG_DIR=/www/wwwroot/javaapi/logs/admin
# ---------- 图片/PDF 目录(与步骤一 H5 Nginx 共享宿主机路径) ----------
CRMEB_IMAGE_DIR=/www/wwwroot/lehoo6.com
CRMEB_IMAGE_DIR=/www/wwwroot/h5y2c.com
# ---------- 前端静态目录bind-mountrsync 更新后立即生效) ----------
# 积分商城 H5uni-app SPA对应域名 jf.lehoo6.com
SINGLE_H5_DIR=/www/wwwroot/jf.lehoo6.com
# 积分商城管理后台Vue SPA对应域名 jfadmin.lehoo6.com
SINGLE_ADMIN_WEB_DIR=/www/wwwroot/jfadmin.lehoo6.com
# 积分商城 H5uni-app SPA对应域名 jf.h5y2c.com
SINGLE_H5_DIR=/www/wwwroot/jf.h5y2c.com
# 积分商城管理后台Vue SPA对应域名 jfadmin.h5y2c.com
SINGLE_ADMIN_WEB_DIR=/www/wwwroot/jfadmin.h5y2c.com
# ---------- 宿主机暴露端口(供宝塔 Nginx 反代) ----------
SINGLE_ADMIN_PORT=18081

View File

@@ -8,8 +8,8 @@
> 这套方案参考 `deploy/docker/step2-single-shop`,按 `czleilei240` 已验证结构复制。
> 当前默认域名假设为:
> - 积分商城 H5`jf.lehoo6.com`
> - 积分商城管理后台:`jfadmin.lehoo6.com`
> - 积分商城 H5`jf.h5y2c.com`
> - 积分商城管理后台:`jfadmin.h5y2c.com`
---
@@ -28,21 +28,21 @@ scp single-shop-22/backend/crmeb-admin/target/miao-admin-2.2.jar root@39.97.236
### 2. 前端静态文件
```bash
mkdir -p /www/wwwroot/jf.lehoo6.com
mkdir -p /www/wwwroot/jf.h5y2c.com
rsync -a --delete single-shop-22/single_uniapp22miao/unpackage/dist/build/web/ \
root@39.97.236.112:/www/wwwroot/jf.lehoo6.com/
chmod -R 755 /www/wwwroot/jf.lehoo6.com/
root@39.97.236.112:/www/wwwroot/jf.h5y2c.com/
chmod -R 755 /www/wwwroot/jf.h5y2c.com/
mkdir -p /www/wwwroot/jfadmin.lehoo6.com
mkdir -p /www/wwwroot/jfadmin.h5y2c.com
rsync -a --delete single-shop-22/backend-adminend/dist/ \
root@39.97.236.112:/www/wwwroot/jfadmin.lehoo6.com/
chmod -R 755 /www/wwwroot/jfadmin.lehoo6.com/
root@39.97.236.112:/www/wwwroot/jfadmin.h5y2c.com/
chmod -R 755 /www/wwwroot/jfadmin.h5y2c.com/
```
### 3. 图片/PDF 目录
```bash
mkdir -p /www/wwwroot/lehoo6.com
mkdir -p /www/wwwroot/h5y2c.com
```
---
@@ -69,12 +69,12 @@ docker compose --env-file .env logs -f single-admin-api
| 域名 | 用途 | 宿主机端口 |
|---|---|---|
| `jf.lehoo6.com` | 积分商城 H5uni-app | **18082** |
| `jfadmin.lehoo6.com` | 积分商城管理后台Vue | **18081** |
| `jf.h5y2c.com` | 积分商城 H5uni-app | **18082** |
| `jfadmin.h5y2c.com` | 积分商城管理后台Vue | **18081** |
> Spring Boot API 端口30032 / 30033仅容器内监听不对外暴露。
> 宝塔 Nginx 通过域名反代到 `127.0.0.1:18081 / 18082`,再由容器内 Nginx 转发到 API。
> 图片/PDF 实际落盘路径为宿主机 `/www/wwwroot/lehoo6.com/crmebimage/public/...`。
> 图片/PDF 实际落盘路径为宿主机 `/www/wwwroot/h5y2c.com/crmebimage/public/...`。
---
@@ -82,8 +82,8 @@ docker compose --env-file .env logs -f single-admin-api
| 地址 | 预期 |
|------|------|
| `https://jf.lehoo6.com/` | 积分商城 H5 |
| `https://jfadmin.lehoo6.com/` | 积分商城管理后台 |
| `https://jf.h5y2c.com/` | 积分商城 H5 |
| `https://jfadmin.h5y2c.com/` | 积分商城管理后台 |
| `http://39.97.236.112:18082/` | H5 直连测试 |
| `http://39.97.236.112:18081/` | 管理后台直连测试 |
@@ -97,9 +97,9 @@ docker compose --env-file .env logs -f single-admin-api
| `/www/wwwroot/javaapi/miao-admin-2.2.jar` | `/app/app.jar` | 管理端 API JAR |
| `/www/wwwroot/javaapi/logs/front/` | `/app/log` | 用户端 API 日志 |
| `/www/wwwroot/javaapi/logs/admin/` | `/app/log` | 管理端 API 日志 |
| `/www/wwwroot/lehoo6.com/` | `/usr/local/crmeb/` | 图片/PDF 写入目录 |
| `/www/wwwroot/jf.lehoo6.com/` | `/usr/share/nginx/html` | H5 静态文件 |
| `/www/wwwroot/jfadmin.lehoo6.com/` | `/usr/share/nginx/html` | 管理后台静态文件 |
| `/www/wwwroot/h5y2c.com/` | `/usr/local/crmeb/` | 图片/PDF 写入目录 |
| `/www/wwwroot/jf.h5y2c.com/` | `/usr/share/nginx/html` | H5 静态文件 |
| `/www/wwwroot/jfadmin.h5y2c.com/` | `/usr/share/nginx/html` | 管理后台静态文件 |
| `../single-shop/application-docker.yml` | `/config/application-docker.yml` | Spring Boot 配置 |
---
@@ -110,7 +110,7 @@ docker compose --env-file .env logs -f single-admin-api
|---|---|
| RDS Host | `rm-bp1a178eq62lxba9xbo.mysql.rds.aliyuncs.com` |
| DB / User | `byhlc112` / `yangtangyoupin` |
| imagePath 宿主机目录 | `/www/wwwroot/lehoo6.com/` |
| imagePath 宿主机目录 | `/www/wwwroot/h5y2c.com/` |
| SYNC_SOURCE_ID | `shop_16` |
| SYNC_TARGET_MER_ID | `16` |
| Spring profile | `docker`(通过 `application-docker.yml` 注入) |
@@ -119,5 +119,5 @@ docker compose --env-file .env logs -f single-admin-api
## 待确认项
- 如果积分管理后台域名不是 `jfadmin.lehoo6.com`,需要同步替换 `.env.example`、README 和宝塔 Nginx 配置
- 如果积分管理后台域名不是 `jfadmin.h5y2c.com`,需要同步替换 `.env.example`、README 和宝塔 Nginx 配置
- Redis 仍按 Docker 内置实例方案生成;若你想接外部 Redis可以再帮你补一版外部 Redis 配置