54 lines
2.1 KiB
Bash
Executable File
54 lines
2.1 KiB
Bash
Executable File
#!/bin/bash
|
|
set -e
|
|
echo "=== 开始完整部署 ==="
|
|
|
|
# 1. 停止所有node进程
|
|
echo "1. 停止现有进程..."
|
|
pkill -f 'node app' 2>/dev/null || true
|
|
sleep 2
|
|
|
|
# 2. 删除旧数据库,让后端重新创建
|
|
echo "2. 删除旧数据库..."
|
|
rm -f /opt/company-finance-system/backend/data/finance.db
|
|
rm -f /opt/company-finance-system/backend/finance.db
|
|
find /opt/company-finance-system -name '*.db' -delete 2>/dev/null || true
|
|
echo " 数据库已删除"
|
|
|
|
# 3. 安装后端依赖
|
|
echo "3. 安装后端依赖..."
|
|
cd /opt/company-finance-system/backend
|
|
npm install --production 2>&1 | tail -3
|
|
|
|
# 4. 启动后端(会自动创建全新数据库)
|
|
echo "4. 启动后端..."
|
|
cd /opt/company-finance-system/backend
|
|
PORT=3000 nohup node app.js > /var/log/backend.log 2>&1 &
|
|
disown
|
|
sleep 5
|
|
|
|
# 5. 检查后端是否启动
|
|
echo "5. 检查后端状态..."
|
|
if netstat -tlnp 2>/dev/null | grep 3000; then
|
|
echo " 后端启动成功!"
|
|
else
|
|
echo " 后端启动失败,查看日志:"
|
|
tail -20 /var/log/backend.log
|
|
exit 1
|
|
fi
|
|
|
|
# 6. 测试关键API
|
|
echo "6. 测试关键API..."
|
|
echo " - 健康检查: $(curl -s http://localhost:3000/api/health | head -c 50)"
|
|
echo " - 登录测试: $(curl -s -X POST http://localhost:3000/api/auth/login -H 'Content-Type: application/json' -d '{"username":"admin","password":"X123c321@"}' | head -c 100)"
|
|
echo " - 物流公司: $(curl -s http://localhost:3000/api/logistics-companies | head -c 100)"
|
|
echo " - 采购订单: $(curl -s http://localhost:3000/api/purchase-orders | head -c 100)"
|
|
echo " - 付款计划: $(curl -s http://localhost:3000/api/payment-plans | head -c 100)"
|
|
echo " - 汇率: $(curl -s http://localhost:3000/api/exchange-rates | head -c 100)"
|
|
echo " - 预算: $(curl -s http://localhost:3000/api/budget-projects | head -c 100)"
|
|
echo " - 执行: $(curl -s http://localhost:3000/api/executions | head -c 100)"
|
|
echo " - 客户: $(curl -s http://localhost:3000/api/customers | head -c 100)"
|
|
echo " - 付款节点: $(curl -s http://localhost:3000/api/payment-nodes | head -c 100)"
|
|
echo " - 付款记录: $(curl -s http://localhost:3000/api/payment-records | head -c 100)"
|
|
|
|
echo ""
|
|
echo "=== 部署完成 ===" |