You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
64 lines
1.5 KiB
64 lines
1.5 KiB
#!/bin/bash
|
|
|
|
echo ""
|
|
echo "[信息] 开始部署流程..."
|
|
echo ""
|
|
|
|
# 切换到项目根目录
|
|
cd "$(dirname "$0")/.."
|
|
|
|
# 步骤1: 构建项目(production环境)
|
|
echo "[步骤 1/4] 构建项目(production环境)..."
|
|
npm run build:prod
|
|
if [ $? -ne 0 ]; then
|
|
echo "[错误] 构建失败!"
|
|
exit 1
|
|
fi
|
|
echo "[成功] 构建完成"
|
|
echo ""
|
|
|
|
# 步骤2: 压缩打包文件
|
|
echo "[步骤 2/4] 压缩打包文件..."
|
|
if [ -f "epmet-work-pc.zip" ]; then
|
|
rm -f epmet-work-pc.zip
|
|
echo "[信息] 删除旧的压缩包"
|
|
fi
|
|
|
|
cd epmet-work-pc
|
|
zip -r ../epmet-work-pc.zip . > /dev/null
|
|
cd ..
|
|
if [ $? -ne 0 ]; then
|
|
echo "[错误] 压缩失败!"
|
|
exit 1
|
|
fi
|
|
echo "[成功] 压缩完成:epmet-work-pc.zip"
|
|
echo ""
|
|
|
|
# 步骤3: 上传文件到服务器
|
|
echo "[步骤 3/4] 上传文件到服务器..."
|
|
scp epmet-work-pc.zip root@192.168.1.144:/opt/www/epmet-work-pc
|
|
if [ $? -ne 0 ]; then
|
|
echo "[错误] 上传失败!请检查SSH连接配置"
|
|
exit 1
|
|
fi
|
|
echo "[成功] 文件上传完成"
|
|
echo ""
|
|
|
|
# 步骤4: 在服务器上解压文件
|
|
echo "[步骤 4/4] 在服务器上解压文件..."
|
|
ssh root@192.168.1.144 "cd /opt/www/epmet-work-pc && unzip -o epmet-work-pc.zip && rm -f epmet-work-pc.zip"
|
|
if [ $? -ne 0 ]; then
|
|
echo "[错误] 解压失败!"
|
|
exit 1
|
|
fi
|
|
echo "[成功] 解压完成"
|
|
echo ""
|
|
|
|
echo "[完成] 部署成功!"
|
|
echo "部署位置:192.168.1.144:/opt/www/epmet-work-pc"
|
|
echo ""
|
|
|
|
# 清理本地压缩包
|
|
rm -f epmet-work-pc.zip
|
|
rm -rf epmet-work-pc
|
|
|
|
|