deploy.sh 952 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. #!/bin/bash
  2. # 设置错误时退出
  3. set -e
  4. # 配置变量
  5. PROJECT_NAME="tweb-api"
  6. PROJECT_DIR="/var/www/$PROJECT_NAME"
  7. username="wuyi"
  8. password="hXE8ZjQ^Q46V7n"
  9. GIT_REPO="https://git.izouma.com/wuyi/tweb-api.git"
  10. GIT_REPO_WITH_AUTH="https://${username}:${password}@git.izouma.com/wuyi/tweb-api.git"
  11. echo "🚀 开始部署 $PROJECT_NAME..."
  12. # 进入项目目录
  13. cd "$PROJECT_DIR"
  14. # 设置 Git 远程仓库 URL(包含认证信息)
  15. echo "🔧 配置 Git 远程仓库..."
  16. git remote set-url origin "$GIT_REPO_WITH_AUTH"
  17. # Git 拉取最新代码
  18. echo "📥 拉取最新代码..."
  19. git pull origin main
  20. # 安装依赖
  21. echo "📦 安装依赖..."
  22. yarn install
  23. # 构建项目
  24. echo "🔨 构建项目..."
  25. yarn build
  26. # 复制配置文件
  27. echo "📋 复制配置文件..."
  28. cp .env.production dist/.env
  29. cp package.json dist/package.json
  30. # 重启 PM2 应用
  31. echo "🔄 重启 PM2 应用..."
  32. pm2 restart tweb-api
  33. echo "✅ 部署完成!"
  34. pm2 status