71 lines
1.6 KiB
Bash
Executable File
71 lines
1.6 KiB
Bash
Executable File
#!/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 类型"
|