#!/bin/bash # 设置错误时退出 set -e # 设置颜色输出 RED='\033[0;31m' GREEN='\033[0;32m' YELLOW='\033[1;33m' NC='\033[0m' # No Color echo -e "${GREEN}启动 Goalfymax Admin 服务...${NC}" # 切换到项目根目录 cd "$(dirname "$0")/.." # 检查是否已经有服务在运行 if [ -f "admin-server.pid" ]; then PID=$(cat admin-server.pid) if ps -p $PID > /dev/null 2>&1; then echo -e "${YELLOW}服务已经在运行 (PID: $PID)${NC}" echo -e "${YELLOW}如需重启,请先执行 ./scripts/stop.sh${NC}" exit 1 else # 删除过期的 PID 文件 rm -f admin-server.pid fi fi # 创建日志目录 mkdir -p logs # 启动服务 echo -e "${YELLOW}正在启动服务...${NC}" nohup ./admin-server --config etc/config.yaml > logs/admin-server.log 2>&1 & PID=$! # 保存 PID echo $PID > admin-server.pid # 等待服务启动 sleep 2 # 检查服务是否启动成功 if ps -p $PID > /dev/null 2>&1; then echo -e "${GREEN}✓ 服务启动成功 (PID: $PID)${NC}" echo -e "${GREEN}✓ 日志文件: logs/admin-server.log${NC}" echo -e "${GREEN}✓ 服务端口: 8087${NC}" else echo -e "${RED}✗ 服务启动失败${NC}" echo -e "${RED}请检查日志文件: logs/admin-server.log${NC}" rm -f admin-server.pid exit 1 fi