| 12345678910111213141516171819202122232425262728293031323334353637383940414243 |
- #!/bin/bash
- # 门店检测工作台 —— 服务器 / Linux 启动脚本(非交互,适合 systemd、nohup、docker)
- #
- # 用法:
- # ./start.sh # 默认端口 8787,开放局域网
- # ./start.sh 9000 # 指定端口
- # ./start.sh --local # 只允许本机访问(放在 nginx 后面时用)
- # PORT=9000 ./start.sh # 也可以用环境变量
- #
- # 建议放在 systemd 里跑,见 deploy/门店检测工作台.service
- set -e
- cd "$(dirname "$0")"
- PORT="${PORT:-8787}"
- HOST_ARG=()
- for a in "$@"; do
- case "$a" in
- --local) HOST_ARG+=("$a") ;;
- --*) ;;
- *) PORT="$a" ;;
- esac
- done
- # 找 Python 3.7+
- PY=""
- for c in python3 python; do
- if command -v "$c" >/dev/null 2>&1 && \
- "$c" -c 'import sys; sys.exit(0 if sys.version_info >= (3,7) else 1)' 2>/dev/null; then
- PY="$c"; break
- fi
- done
- if [ -z "$PY" ]; then
- echo "✗ 没找到 Python 3.7+,请先安装:" >&2
- echo " Ubuntu/Debian: sudo apt update && sudo apt install -y python3" >&2
- echo " CentOS/RHEL: sudo yum install -y python3" >&2
- exit 1
- fi
- echo "Python: $($PY --version 2>&1) ($(command -v $PY))"
- echo "端口: $PORT"
- exec "$PY" -u backend/server.py --port "$PORT" "${HOST_ARG[@]}"
|