#!/bin/bash # ============================================ # 前端打包脚本 # 构建并打包 dist + nginx.conf 为部署包 # ============================================ set -e SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)" cd "$SCRIPT_DIR" echo "============================================" echo " 前端打包" echo "============================================" # 安装依赖 echo "[1/4] 安装依赖..." npm install # 构建 echo "[2/4] 构建前端..." npm run build # 复制 nginx 配置到 dist echo "[3/4] 复制配置文件..." cp nginx.conf dist/nginx.conf.example # 打包 echo "[4/4] 打包..." VERSION=$(date +%Y%m%d_%H%M%S) TAR_NAME="frontend_${VERSION}.tar.gz" tar -czf "$TAR_NAME" -C dist . echo "" echo "============================================" echo " 打包完成!" echo "============================================" echo "" echo "部署包: web/$TAR_NAME" echo "大小: $(du -h "$TAR_NAME" | cut -f1)" echo "内容: 前端文件 + nginx.conf.example" echo "" echo "【部署步骤】" echo " 1. 上传到服务器: scp $TAR_NAME user@server:/opt/filesystem/" echo " 2. 解压: mkdir -p /opt/filesystem/frontend && tar -xzf $TAR_NAME -C /opt/filesystem/frontend/" echo " 3. 复制 Nginx 配置: cp /opt/filesystem/frontend/nginx.conf.example /etc/nginx/conf.d/filesystem.conf" echo " 4. 修改配置: vi /etc/nginx/conf.d/filesystem.conf (改 server_name、路径等)" echo " 5. 重启 Nginx: nginx -t && systemctl reload nginx" echo ""