stop_all.sh
792 Bytes
#!/bin/bash
BASE_DIR=$(cd "$(dirname "$0")"; pwd)
# Load shared configuration to get ports
if [ -f "$BASE_DIR/.env.sh" ]; then
source "$BASE_DIR/.env.sh"
else
echo "Error: .env.sh not found in $BASE_DIR"
exit 1
fi
echo "Stopping Z-Image Services..."
if command -v pm2 &> /dev/null; then
pm2 stop $BACKEND_NAME $FRONTEND_NAME
pm2 delete $BACKEND_NAME $FRONTEND_NAME
echo "Stopped via PM2."
else
# Fallback to port-based kill using variables from .env.sh
pids=$(lsof -t -i:$LOCAL_BACKEND_PORT -i:$LOCAL_FRONTEND_PORT)
if [ -n "$pids" ]; then
kill -9 $pids
echo "Killed PIDs on ports $LOCAL_BACKEND_PORT and $LOCAL_FRONTEND_PORT: $pids"
else
echo "No processes found on ports $LOCAL_BACKEND_PORT/$LOCAL_FRONTEND_PORT"
fi
fi