71 lines
1.6 KiB
Bash
71 lines
1.6 KiB
Bash
|
|
#!/bin/bash
|
|||
|
|
# ============================================
|
|||
|
|
# Flutter Web 快速部署脚本
|
|||
|
|
# ============================================
|
|||
|
|
set -e
|
|||
|
|
|
|||
|
|
echo "🚀 Flutter Web 快速部署"
|
|||
|
|
echo "======================="
|
|||
|
|
|
|||
|
|
# 服务器配置
|
|||
|
|
SERVER="root@8.155.172.147"
|
|||
|
|
REMOTE_DIR="/www/wwwroot/monisuo"
|
|||
|
|
WEB_DIR="/www/wwwroot/monisuo-h5"
|
|||
|
|
|
|||
|
|
# 本地构建目录
|
|||
|
|
LOCAL_BUILD="flutter_monisuo/build/web"
|
|||
|
|
|
|||
|
|
echo ""
|
|||
|
|
echo "📋 部署步骤:"
|
|||
|
|
echo "1️⃣ 拉取最新代码"
|
|||
|
|
echo "2️⃣ 同步构建文件"
|
|||
|
|
echo "3️⃣ 设置权限"
|
|||
|
|
echo "4️⃣ 验证部署"
|
|||
|
|
echo ""
|
|||
|
|
|
|||
|
|
# 1. SSH 到服务器并拉取代码
|
|||
|
|
echo "📥 [1/4] 拉取最新代码..."
|
|||
|
|
ssh $SERVER << 'EOF'
|
|||
|
|
cd /www/wwwroot/monisuo
|
|||
|
|
git fetch origin
|
|||
|
|
git reset --hard origin/main
|
|||
|
|
echo "✅ 代码已更新"
|
|||
|
|
EOF
|
|||
|
|
|
|||
|
|
# 2. 同步构建文件
|
|||
|
|
echo "📦 [2/4] 同步构建文件..."
|
|||
|
|
ssh $SERVER << EOF
|
|||
|
|
cd $REMOTE_DIR
|
|||
|
|
rm -rf $WEB_DIR/*
|
|||
|
|
cp -r $LOCAL_BUILD/* $WEB_DIR/
|
|||
|
|
echo "✅ 文件已同步"
|
|||
|
|
EOF
|
|||
|
|
|
|||
|
|
# 3. 设置权限
|
|||
|
|
echo "🔐 [3/4] 设置权限..."
|
|||
|
|
ssh $SERVER << EOF
|
|||
|
|
chown -R www:www $WEB_DIR
|
|||
|
|
chmod -R 755 $WEB_DIR
|
|||
|
|
echo "✅ 权限已设置"
|
|||
|
|
EOF
|
|||
|
|
|
|||
|
|
# 4. 验证部署
|
|||
|
|
echo "✅ [4/4] 验证部署..."
|
|||
|
|
ssh $SERVER << EOF
|
|||
|
|
echo "检查关键文件:"
|
|||
|
|
ls -lh $WEB_DIR/main.dart.js
|
|||
|
|
ls -lh $WEB_DIR/flutter_bootstrap.js
|
|||
|
|
ls -lh $WEB_DIR/canvaskit/canvaskit.wasm
|
|||
|
|
echo ""
|
|||
|
|
echo "✅ 部署完成!"
|
|||
|
|
echo "🌐 访问地址: http://8.155.172.147:8061"
|
|||
|
|
EOF
|
|||
|
|
|
|||
|
|
echo ""
|
|||
|
|
echo "🎉 部署成功!"
|
|||
|
|
echo ""
|
|||
|
|
echo "⚠️ 重要提示:"
|
|||
|
|
echo "1. 清除浏览器缓存 (Ctrl+Shift+Delete)"
|
|||
|
|
echo "2. 如果仍有问题,检查浏览器控制台错误"
|
|||
|
|
echo "3. 确保 Nginx 配置了 WASM MIME 类型"
|