Ви не можете вибрати більше 25 тем Теми мають розпочинатися з літери або цифри, можуть містити дефіси (-) і не повинні перевищувати 35 символів.

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. #!/bin/bash
  2. # 部署脚本
  3. echo "开始部署 crawling-service..."
  4. # 1. 安装 Node.js 22.x
  5. echo "安装 Node.js 22.x..."
  6. curl -fsSL https://deb.nodesource.com/setup_22.x | sudo -E bash -
  7. sudo apt-get install -y nodejs
  8. # 2. 安装 PM2
  9. echo "安装 PM2..."
  10. sudo npm install -g pm2
  11. # 3. 安装项目依赖
  12. echo "安装项目依赖..."
  13. npm install
  14. # 4. 创建环境变量文件
  15. echo "创建环境变量文件..."
  16. cat > .env << EOL
  17. # 服务器配置
  18. PORT=8991
  19. HOST=0.0.0.0
  20. NODE_ENV=production
  21. # 安全配置
  22. ALLOWED_ORIGINS=http://your-domain.com
  23. # 爬虫配置
  24. CRAWLER_TIMEOUT=60000
  25. CRAWLER_RETRY_ATTEMPTS=3
  26. CRAWLER_RETRY_DELAY=2000
  27. # 日志配置
  28. LOG_LEVEL=info
  29. LOG_FORMAT=combined
  30. # 上传配置
  31. UPLOAD_URL=https://apibase.sohomall.jp/uploaders
  32. UPLOAD_SCENE=goods
  33. UPLOAD_TIMEOUT=30000
  34. EOL
  35. # 5. 创建 screenshots 目录
  36. echo "创建截图目录..."
  37. mkdir -p screenshots
  38. # 6. 使用 PM2 启动服务
  39. echo "启动服务..."
  40. pm2 start src/server.js --name "crawling-service" --env production
  41. # 7. 保存 PM2 进程列表
  42. echo "保存 PM2 进程列表..."
  43. pm2 save
  44. # 8. 设置开机自启
  45. echo "设置开机自启..."
  46. pm2 startup
  47. echo "部署完成!"