start.sh 905 B

12345678910111213141516171819202122232425262728
  1. #!/bin/zsh
  2. # start.sh — 启动传奇流水线管理系统主进程(唯一必启项)
  3. # 用法: ./start.sh 前台跑(看实时日志)
  4. # ./start.sh -d 后台常驻(推荐)
  5. set -euo pipefail
  6. cd "$(dirname "$0")"
  7. PID=$(pgrep -f "pbot.db.serve" || true)
  8. if [[ -n "$PID" ]]; then
  9. echo "已在使用中: 主进程 pid=$PID (http://127.0.0.1:8765)"
  10. echo "如需重启: ./stop.sh && ./start.sh -d"
  11. exit 0
  12. fi
  13. if [[ "${1:-}" == "-d" ]]; then
  14. nohup .venv/bin/python -m pbot.db.serve > /tmp/pbot_serve.log 2>&1 &
  15. sleep 3
  16. NEW=$(pgrep -f "pbot.db.serve" || true)
  17. if [[ -z "$NEW" ]]; then
  18. echo "启动失败, 查看 /tmp/pbot_serve.log"
  19. exit 1
  20. fi
  21. echo "主进程已后台启动 pid=$NEW → http://127.0.0.1:8765"
  22. echo "日志: tail -f /tmp/pbot_serve.log"
  23. else
  24. echo "前台启动(Ctrl+C 退出) → http://127.0.0.1:8765"
  25. exec .venv/bin/python -m pbot.db.serve
  26. fi