deerflow-code/scripts/start-frontend.sh
2026-09-07 18:24:55 +08:00

35 lines
882 B
Bash

#!/usr/bin/env bash
set -euo pipefail
source "$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)/env.sh"
PID_FILE="${PID_DIR}/frontend.pid"
LOG_FILE="${LOG_DIR}/frontend.log"
if is_running "${PID_FILE}"; then
echo "Frontend is already running (pid $(cat "${PID_FILE}"))."
echo "URL: ${FRONTEND_PUBLIC_BASE_URL}"
exit 0
fi
rm -f "${PID_FILE}"
echo "Starting frontend..."
echo "Log: ${LOG_FILE}"
# nohup instead of setsid: setsid does not exist on Windows Git Bash.
nohup bash -c '
cd "$0" || exit 1
exec env \
VITE_BACKEND_BASE_URL="$1" \
VITE_LANGGRAPH_BASE_URL="$1/api" \
pnpm exec vite \
--host "$2" \
--port "$3"
' "${FRONTEND_DIR}" "${BACKEND_PUBLIC_BASE_URL}" "${FRONTEND_HOST}" "${FRONTEND_PORT}" \
>"${LOG_FILE}" 2>&1 &
echo "$!" >"${PID_FILE}"
echo "Frontend started (pid $(cat "${PID_FILE}"))."
echo "URL: ${FRONTEND_PUBLIC_BASE_URL}"