#!/bin/bash # 部署脚本 # 使用方法: ./deploy.sh [remote_host] [port] # 示例: ./deploy.sh gavin@biboer.cn 21174 # 配置远程服务器信息 REMOTE_HOST="${1:-gavin@biboer.cn}" # 默认远程主机 REMOTE_PORT="${2:-21174}" # 默认SSH端口 REMOTE_DIR="/home/gavin/monitor" # 远程部署目录 echo "🚀 开始部署 Monitor 网站..." echo "📡 远程服务器: $REMOTE_HOST" echo "📁 远程目录: $REMOTE_DIR" # 1. 安装依赖 echo "📦 安装依赖..." npm install # 2. 构建网页版本 echo "🔨 构建网页版本..." npm run build # 3. 检查构建结果 if [ ! -d "dist" ]; then echo "❌ 构建失败,dist 目录不存在" exit 1 fi echo "✅ 构建完成!" # 4. 创建远程目录 echo "📂 准备远程目录..." ssh -p $REMOTE_PORT $REMOTE_HOST "mkdir -p $REMOTE_DIR" # 5. 同步 dist 目录到远程服务器 echo "📤 上传文件到服务器..." rsync -avz --delete \ --exclude '.DS_Store' \ --exclude '._*' \ --exclude 'node_modules' \ -e "ssh -p $REMOTE_PORT" \ dist/ $REMOTE_HOST:$REMOTE_DIR/ # 6. 验证部署 echo "🔍 验证部署..." ssh -p $REMOTE_PORT $REMOTE_HOST "ls -lh $REMOTE_DIR" echo "" echo "✅ 部署完成!" echo "📍 文件已上传到: $REMOTE_HOST:$REMOTE_DIR"