Files
ai-server/scripts/stop.sh
2025-09-22 15:07:35 +05:00

98 lines
3.1 KiB
Bash
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
#!/bin/bash
# AI Server Stop Script for Ubuntu
set -e
# Colors
GREEN='\033[0;32m'
RED='\033[0;31m'
YELLOW='\033[1;33m'
BLUE='\033[0;34m'
NC='\033[0m'
echo -e "${BLUE}⏹️ Остановка AI Server...${NC}"
# Check if running as root for system services
if [[ $EUID -eq 0 ]]; then
echo -e "${YELLOW}Остановка системных сервисов...${NC}"
# Stop Web UI service
echo "🌐 Остановка веб-интерфейса..."
if systemctl is-active --quiet ai-server-webui; then
systemctl stop ai-server-webui
echo -e "${GREEN}Веб-интерфейс остановлен${NC}"
else
echo -e "${YELLOW}⚠️ Веб-интерфейс не был запущен${NC}"
fi
# Stop Ollama service (optional)
read -p "Остановить Ollama сервер? (y/N): " -n 1 -r
echo
if [[ $REPLY =~ ^[Yy]$ ]]; then
echo "🤖 Остановка Ollama..."
systemctl stop ollama
echo -e "${GREEN}✅ Ollama остановлен${NC}"
else
echo -e "${YELLOW}⚠️ Ollama оставлен запущенным${NC}"
fi
else
echo -e "${YELLOW}Остановка пользовательских сервисов...${NC}"
# Change to working directory
cd /opt/ai-server 2>/dev/null || {
echo -e "${RED}Не найдена рабочая директория /opt/ai-server${NC}"
exit 1
}
# Stop web interface containers
echo "🌐 Остановка веб-интерфейса..."
if docker compose ps | grep -q "running"; then
docker compose down
echo -e "${GREEN}✅ Контейнеры остановлены${NC}"
else
echo -e "${YELLOW}⚠️ Контейнеры не были запущены${NC}"
fi
# Optional: Stop Ollama if requested
if systemctl is-active --quiet ollama; then
read -p "Остановить Ollama сервер? (y/N): " -n 1 -r
echo
if [[ $REPLY =~ ^[Yy]$ ]]; then
echo "🤖 Остановка Ollama..."
sudo systemctl stop ollama
echo -e "${GREEN}✅ Ollama остановлен${NC}"
else
echo -e "${YELLOW}⚠️ Ollama оставлен запущенным${NC}"
fi
fi
fi
# Clean up unused Docker resources
echo "🧹 Очистка неиспользуемых ресурсов..."
docker system prune -f >/dev/null 2>&1 || true
# Show final status
echo ""
echo -e "${GREEN}✅ AI Server остановлен!${NC}"
echo ""
echo -e "${BLUE}📊 Текущий статус:${NC}"
# Check Ollama
if systemctl is-active --quiet ollama; then
echo " 🤖 Ollama: запущен"
else
echo " 🤖 Ollama: остановлен"
fi
# Check containers
cd /opt/ai-server 2>/dev/null || exit 0
if docker compose ps 2>/dev/null | grep -q "running"; then
echo " 🌐 Веб-интерфейс: запущен"
else
echo " 🌐 Веб-интерфейс: остановлен"
fi
echo ""
echo -e "${YELLOW}💡 Для запуска используйте: ai-start${NC}"