deploy.sh 1.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. #!/bin/bash
  2. set -e
  3. echo "=== Auto-SSL 一键部署脚本 ==="
  4. # 1. 拉取最新代码
  5. echo "1. 拉取最新代码..."
  6. git pull origin 0.01
  7. # 2. 编译后端
  8. echo "2. 编译Go后端..."
  9. cd backend
  10. go build -o autossl .
  11. cd ..
  12. # 3. 编译前端
  13. echo "3. 编译Vue前端..."
  14. cd frontend
  15. npm install --include=dev
  16. npm run build
  17. cd ..
  18. # 4. 部署前端资源...
  19. echo "4. 部署前端资源..."
  20. rm -rf backend/dist
  21. mkdir -p backend/dist
  22. cp -rf frontend/dist/* backend/dist/
  23. # 5. 创建systemd服务
  24. echo "5. 安装systemd服务..."
  25. sudo cp autossl.service /etc/systemd/system/
  26. sudo systemctl daemon-reload
  27. sudo systemctl enable autossl
  28. # 6. 重启服务
  29. echo "6. 重启服务..."
  30. sudo systemctl restart autossl
  31. # 7. 检查状态
  32. sleep 2
  33. echo "7. 检查服务状态..."
  34. if curl -s http://127.0.0.1:9090/api/stats > /dev/null; then
  35. echo "✅ 部署成功!服务运行在 http://0.0.0.0:9090"
  36. echo "📝 日志查看:journalctl -u autossl -f"
  37. else
  38. echo "❌ 部署失败,请检查日志:journalctl -u autossl -n 50"
  39. exit 1
  40. fi