Files
PlantAI-rag-new/agent/methodology/scripts/start.sh
T
adminandClaude Fable 5 759427b759 chore(deploy): 启动脚本绑定策略统一——8090 默认 0.0.0.0,其余服务默认 127.0.0.1
用户规则:提供客户 UI 的服务(BFF 8090)默认绑 0.0.0.0 面向内网客户
访问;其余内部服务(QA/methodology/legacy/vstore/bioflow)默认绑
127.0.0.1 不对外暴露。

- deploy/bff_restart.sh: BIND 默认 127.0.0.1 → 0.0.0.0(注释同步)
- sdk/run.sh: --host 127.0.0.1 → 0.0.0.0(注释同步)
- deploy/start-dev.sh: BFF 行 127.0.0.1 → 0.0.0.0
- bioflow_service/restart.sh: BIOFLOW_BIND_HOST 默认 0.0.0.0 → 127.0.0.1
- agent/methodology/scripts/start.sh: METHODOLOGY_API_HOST 默认
  0.0.0.0 → 127.0.0.1(部署树副本同改)

实测:8090→0.0.0.0、8091/8092/8093/8094/8098/8099→127.0.0.1,
BFF 上游全 OK,8092/8098 已按新默认值重启,残留 methodology 旧
进程已清理。

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-09-07 18:55:42 +08:00

44 lines
1.5 KiB
Bash
Executable File

#!/usr/bin/env bash
# agent/methodology/scripts/start.sh —— Methodology 服务唯一启动接口
# 用法:bash scripts/start.sh [port] (默认 8092 终态;浸泡期影子用 8001)
set -euo pipefail
AGENT_ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
PORT="${1:-8092}" # 终态端口
ENV_FILE="${METHODOLOGY_ENV_FILE:-$AGENT_ROOT/env/prod.env}"
LOG_FILE="${METHODOLOGY_LOG_FILE:-/tmp/plantai-agent-methodology-$PORT.log}"
PID_FILE="$AGENT_ROOT/run/methodology-$PORT.pid"
PYTHON="${METHODOLOGY_PYTHON:-/home/xzq/5090/teamWorkspace/zh/plantai-rag-new-venv/bin/python}"
BIND="${METHODOLOGY_API_HOST:-127.0.0.1}"
mkdir -p "$AGENT_ROOT/run"
[[ -x "$PYTHON" ]] || { echo "Methodology Python 不可执行: $PYTHON" >&2; exit 1; }
[[ -f "$ENV_FILE" ]] || { echo "缺少 env 文件: $ENV_FILE" >&2; exit 1; }
if [[ -f "$PID_FILE" ]] && kill -0 "$(cat "$PID_FILE")" 2>/dev/null; then
echo "Methodology 已在运行 pid=$(cat "$PID_FILE")" >&2
exit 1
fi
set -a
# shellcheck disable=SC1090
. "$ENV_FILE"
set +a
cd "$AGENT_ROOT"
setsid "$PYTHON" -m uvicorn scripts.methodology_server:app \
--host "$BIND" --port "$PORT" \
> "$LOG_FILE" 2>&1 < /dev/null &
echo $! > "$PID_FILE"
disown
for _ in $(seq 1 20); do
if curl -sf --max-time 3 "http://127.0.0.1:$PORT/health" >/dev/null 2>&1; then
echo "Methodology UP ($BIND:$PORT, pid=$(cat "$PID_FILE"))"
exit 0
fi
sleep 2
done
echo "Methodology FAIL —— 日志尾部:" >&2
tail -30 "$LOG_FILE" >&2
exit 1