docker-stop.sh 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. #!/bin/bash
  2. # RTSP视频流管理系统 - Docker停止脚本
  3. set -e
  4. # 颜色定义
  5. RED='\033[0;31m'
  6. GREEN='\033[0;32m'
  7. YELLOW='\033[1;33m'
  8. NC='\033[0m' # No Color
  9. print_info() {
  10. echo -e "${GREEN}[INFO]${NC} $1"
  11. }
  12. print_warn() {
  13. echo -e "${YELLOW}[WARN]${NC} $1"
  14. }
  15. print_error() {
  16. echo -e "${RED}[ERROR]${NC} $1"
  17. }
  18. echo ""
  19. print_info "=========================================="
  20. print_info "停止RTSP视频流管理系统"
  21. print_info "=========================================="
  22. echo ""
  23. # 检查Docker Compose
  24. if command -v docker-compose &> /dev/null || docker compose version &> /dev/null 2>&1; then
  25. print_info "使用Docker Compose停止服务..."
  26. if command -v docker-compose &> /dev/null; then
  27. docker-compose down
  28. else
  29. docker compose down
  30. fi
  31. print_info "✅ 服务已停止"
  32. else
  33. print_info "使用Docker命令停止服务..."
  34. # 检查容器是否存在
  35. if docker ps -a | grep -q jtjai_media; then
  36. docker stop jtjai_media
  37. print_info "✅ 容器已停止"
  38. # 询问是否删除容器
  39. read -p "是否删除容器? (y/n) " -n 1 -r
  40. echo ""
  41. if [[ $REPLY =~ ^[Yy]$ ]]; then
  42. docker rm jtjai_media
  43. print_info "✅ 容器已删除"
  44. fi
  45. else
  46. print_warn "未找到运行的容器"
  47. fi
  48. fi
  49. echo ""
  50. print_info "=========================================="
  51. print_info "服务已停止"
  52. print_info "=========================================="
  53. echo ""