kv-tube/stop.sh

52 lines
1.1 KiB
Bash

#!/bin/bash
cd "$(dirname "$0")"
# Colors
RED='\033[0;31m'
GREEN='\033[0;32m'
YELLOW='\033[1;33m'
NC='\033[0m'
echo -e "${YELLOW}Stopping KV-Tube...${NC}"
# Kill by PID files
if [ -f logs/backend.pid ]; then
kill $(cat logs/backend.pid) 2>/dev/null
rm -f logs/backend.pid
echo -e " ${GREEN}${NC} Backend stopped"
fi
if [ -f logs/frontend.pid ]; then
kill $(cat logs/frontend.pid) 2>/dev/null
rm -f logs/frontend.pid
echo -e " ${GREEN}${NC} Frontend stopped"
fi
if [ -f logs/tunnel.pid ]; then
kill $(cat logs/tunnel.pid) 2>/dev/null
rm -f logs/tunnel.pid
echo -e " ${GREEN}${NC} Tunnel stopped"
fi
# Kill any remaining processes
pkill -f "kvtube-go" 2>/dev/null
pkill -f "backend/bin/kv-tube" 2>/dev/null
pkill -f "next dev" 2>/dev/null
pkill -f "next start" 2>/dev/null
pkill -f "cloudflared" 2>/dev/null
pkill -f "ngrok" 2>/dev/null
# Kill processes on ports
fkill() {
local port=$1
local pid=$(lsof -t -i:$port 2>/dev/null)
if [ ! -z "$pid" ]; then
kill -9 $pid 2>/dev/null
fi
}
fkill 8080
fkill 3003
echo -e "${GREEN}KV-Tube stopped.${NC}"