docs: 部署文档添加移动端发布和访问说明

更新:
- deploy.sh: 添加移动端部署命令
  * mobile dev - 启动开发服务器
  * mobile h5 - 构建H5版本
  * mobile mp-weixin - 构建微信小程序
  * mobile app - 构建App
  * 服务启动时显示移动端访问地址

新增:
- MOBILE_DEPLOY.md: 移动端部署指南(173行)
  * 支持平台说明(H5/小程序/App)
  * 快速部署步骤
  * 各平台构建和发布流程
  * 配置说明和常见问题

访问地址:
- H5: http://localhost/mobile
- 开发调试: cd fund-mobile && npm run dev:h5
This commit is contained in:
zhangjf 2026-02-16 11:28:40 +08:00
parent 515590477b
commit b38940cf83
2 changed files with 385 additions and 0 deletions

172
docker/app/MOBILE_DEPLOY.md Normal file
View File

@ -0,0 +1,172 @@
# 移动端部署指南
## 📱 支持平台
- **H5** - 浏览器访问
- **微信小程序** - 微信生态
- **App** - Android/iOS原生应用
---
## 🚀 快速部署
### 1. 开发调试
```bash
cd docker/app
./deploy.sh mobile dev
```
访问地址http://localhost:5173
---
### 2. H5部署
#### 构建
```bash
./deploy.sh mobile h5
```
#### 部署到Nginx
构建完成后,将 `fund-mobile/dist/build/h5` 目录复制到Nginx静态资源目录
```bash
# 复制到Nginx
sudo cp -r ../../fund-mobile/dist/build/h5 /var/www/fund-mobile
# 配置Nginx已包含在docker-compose.yml中
# 访问地址http://localhost/mobile
```
---
### 3. 微信小程序部署
#### 构建
```bash
./deploy.sh mobile mp-weixin
```
#### 发布步骤
1. 下载并安装 [微信开发者工具](https://developers.weixin.qq.com/miniprogram/dev/devtools/download.html)
2. 打开微信开发者工具
3. 选择 "导入项目"
4. 选择目录 `fund-mobile/dist/build/mp-weixin`
5. 填写小程序AppID测试号可跳过
6. 点击 "上传" 按钮发布
---
### 4. App部署
#### 构建
```bash
./deploy.sh mobile app
```
#### Android打包
1. 打开 HBuilderX
2. 导入项目 `fund-mobile`
3. 点击 "发行" → "原生App-云打包"
4. 选择 Android 证书
5. 点击 "打包"
#### iOS打包
1. 需要Mac电脑和Apple开发者账号
2. 在 HBuilderX 中选择 "发行" → "原生App-云打包"
3. 选择 iOS 证书
4. 点击 "打包"
---
## 📋 部署命令汇总
| 命令 | 说明 |
|------|------|
| `./deploy.sh mobile dev` | 启动开发服务器 |
| `./deploy.sh mobile h5` | 构建H5版本 |
| `./deploy.sh mobile mp-weixin` | 构建微信小程序 |
| `./deploy.sh mobile app` | 构建App |
---
## 🔧 配置说明
### API地址配置
编辑 `fund-mobile/src/config/api.ts`
```typescript
// 开发环境
const API_BASE_URL = 'http://localhost:8080'
// 生产环境(部署后修改为实际地址)
const API_BASE_URL = 'http://your-domain.com'
```
### 微信小程序配置
编辑 `fund-mobile/src/manifest.json`
```json
{
"mp-weixin": {
"appid": "你的小程序AppID",
"setting": {
"urlCheck": false
}
}
}
```
---
## 📱 访问方式
### H5访问
- 浏览器访问:`http://localhost/mobile`
- 手机扫码访问:部署后生成二维码
### 微信小程序
- 微信搜索小程序名称
- 扫码体验版二维码
### App
- 下载安装APK/IPA文件
- 应用商店搜索下载
---
## 🔒 安全说明
1. **HTTPS**生产环境必须使用HTTPS
2. **Token存储**使用uni-app安全存储API
3. **接口鉴权**所有接口需要JWT Token
4. **图片上传**:限制文件大小和类型
---
## 🐛 常见问题
### Q1: H5页面空白
- 检查API地址是否正确
- 查看浏览器控制台错误信息
- 确认后端服务已启动
### Q2: 微信小程序无法请求
- 检查小程序后台配置的request合法域名
- 开发阶段可关闭域名校验
- 确保使用HTTPS
### Q3: App无法安装
- Android开启"允许安装未知来源应用"
- iOS需要信任企业证书
---
## 📞 技术支持
- 前端问题检查uni-app官方文档
- 后端问题查看Swagger文档 http://localhost:8080/swagger-ui.html
- 部署问题查看Docker日志 `docker-compose logs`

213
docker/app/deploy.sh Executable file
View File

@ -0,0 +1,213 @@
#!/bin/bash
# 资金服务平台部署脚本
set -e
echo "========================================"
echo " 资金服务平台 Docker 部署脚本"
echo "========================================"
# 颜色定义
RED='\033[0;31m'
GREEN='\033[0;32m'
YELLOW='\033[1;33m'
NC='\033[0m' # No Color
# 函数:打印信息
print_info() {
echo -e "${GREEN}[INFO]${NC} $1"
}
print_warn() {
echo -e "${YELLOW}[WARN]${NC} $1"
}
print_error() {
echo -e "${RED}[ERROR]${NC} $1"
}
# 检查Docker
if ! command -v docker &> /dev/null; then
print_error "Docker 未安装,请先安装 Docker"
exit 1
fi
if ! command -v docker-compose &> /dev/null; then
print_error "Docker Compose 未安装,请先安装 Docker Compose"
exit 1
fi
# 创建必要的目录
print_info "创建必要的目录..."
mkdir -p logs/fund-sys logs/fund-cust logs/fund-proj
mkdir -p init
mkdir -p redis
# 创建Redis配置文件
if [ ! -f redis/redis.conf ]; then
print_info "创建 Redis 配置文件..."
cat > redis/redis.conf << 'EOF'
bind 0.0.0.0
port 6379
timeout 0
tcp-keepalive 300
daemonize no
supervised no
pidfile /var/run/redis_6379.pid
loglevel notice
logfile ""
databases 16
always-show-logo no
save 900 1
save 300 10
save 60 10000
stop-writes-on-bgsave-error yes
rdbcompression yes
rdbchecksum yes
dbfilename dump.rdb
dir /data
replica-serve-stale-data yes
replica-read-only yes
repl-diskless-sync no
repl-diskless-sync-delay 5
repl-ping-replica-period 10
repl-timeout 60
repl-disable-tcp-nodelay no
replica-priority 100
maxmemory-policy allkeys-lru
lazyfree-lazy-eviction no
lazyfree-lazy-expire no
lazyfree-lazy-server-del no
replica-lazy-flush no
appendonly yes
appendfilename "appendonly.aof"
appendfsync everysec
no-appendfsync-on-rewrite no
auto-aof-rewrite-percentage 100
auto-aof-rewrite-min-size 64mb
aof-load-truncated yes
aof-use-rdb-preamble yes
EOF
fi
# 解析参数
ACTION=${1:-up}
case $ACTION in
up)
print_info "启动所有服务..."
docker-compose up -d
print_info "服务启动完成!"
echo ""
echo "========================================"
echo " 服务访问地址"
echo "========================================"
echo ""
echo "【管理端 - PC浏览器访问】"
echo " - Nacos控制台: http://localhost:8848/nacos (admin/admin)"
echo " - Swagger文档: http://localhost:8080/swagger-ui.html"
echo " - 应用服务: http://localhost:8080"
echo " - Nginx网关: http://localhost"
echo ""
echo "【移动端 - UniApp】"
echo " - H5访问: http://localhost:8080/mobile"
echo " - 开发调试: cd fund-mobile && npm run dev:h5"
echo ""
echo "========================================"
;;
down)
print_info "停止所有服务..."
docker-compose down
print_info "服务已停止"
;;
restart)
print_info "重启服务..."
docker-compose restart
print_info "服务重启完成"
;;
build)
print_info "重新构建镜像..."
docker-compose build --no-cache
print_info "镜像构建完成"
;;
logs)
SERVICE=${2:-}
if [ -z "$SERVICE" ]; then
docker-compose logs -f
else
docker-compose logs -f $SERVICE
fi
;;
status)
print_info "查看服务状态..."
docker-compose ps
;;
clean)
print_warn "清理所有数据(包括数据库)..."
read -p "确定要删除所有数据吗?这将删除数据库和日志! [y/N] " confirm
if [[ $confirm == [yY] ]]; then
docker-compose down -v
rm -rf logs/*
print_info "数据清理完成"
else
print_info "取消清理"
fi
;;
mobile)
print_info "构建移动端应用..."
cd ../../fund-mobile
case ${2:-h5} in
h5)
print_info "构建H5版本..."
npm run build:h5
print_info "H5构建完成输出目录: dist/build/h5"
;;
mp-weixin)
print_info "构建微信小程序..."
npm run build:mp-weixin
print_info "微信小程序构建完成,输出目录: dist/build/mp-weixin"
print_info "请使用微信开发者工具导入该目录"
;;
app)
print_info "构建App..."
npm run build:app
print_info "App构建完成输出目录: dist/build/app"
;;
dev)
print_info "启动移动端开发服务器..."
npm run dev:h5
;;
*)
echo "用法: $0 mobile {h5|mp-weixin|app|dev}"
echo ""
echo "命令说明:"
echo " h5 - 构建H5版本"
echo " mp-weixin - 构建微信小程序"
echo " app - 构建App"
echo " dev - 启动开发服务器"
exit 1
;;
esac
;;
*)
echo "用法: $0 {up|down|restart|build|logs|status|clean|mobile}"
echo ""
echo "命令说明:"
echo " up - 启动所有服务"
echo " down - 停止所有服务"
echo " restart - 重启服务"
echo " build - 重新构建镜像"
echo " logs - 查看日志 [服务名]"
echo " status - 查看服务状态"
echo " clean - 清理所有数据(危险!)"
echo " mobile - 移动端构建 {h5|mp-weixin|app|dev}"
exit 1
;;
esac
echo ""
echo "========================================"
echo " 部署脚本执行完成"
echo "========================================"