#!/bin/bash # SMS Forwarder Docker 管理脚本 show_help() { echo "SMS Forwarder Docker 管理脚本" echo "" echo "用法: $0 [命令]" echo "" echo "命令:" echo " start 启动服务" echo " stop 停止服务" echo " restart 重启服务" echo " status 查看服务状态" echo " logs 查看实时日志" echo " build 重新构建镜像" echo " test 发送测试通知" echo " stats 查看资源使用" echo " shell 进入容器 shell" echo " clean 清理未使用的镜像和容器" echo " deploy 完整部署流程" echo " help 显示此帮助信息" } case "$1" in start) echo "🚀 启动 SMS Forwarder 服务..." docker-compose up -d ;; stop) echo "⏹️ 停止 SMS Forwarder 服务..." docker-compose down ;; restart) echo "🔄 重启 SMS Forwarder 服务..." docker-compose restart sms-forwarder ;; status) echo "📊 SMS Forwarder 服务状态:" docker-compose ps echo "" echo "容器详细信息:" docker inspect sms-forwarder --format='{{.State.Status}}: {{.State.StartedAt}}' ;; logs) echo "📋 SMS Forwarder 实时日志 (Ctrl+C 退出):" docker-compose logs -f sms-forwarder ;; build) echo "🔨 重新构建镜像..." docker-compose build --no-cache sms-forwarder ;; test) echo "🧪 发送测试通知..." ./scripts/test-docker.sh ;; stats) echo "💾 资源使用统计:" docker stats sms-forwarder --no-stream ;; shell) echo "🐚 进入容器 shell..." docker-compose exec sms-forwarder /bin/bash ;; clean) echo "🧹 清理未使用的 Docker 资源..." docker system prune -f docker image prune -f ;; deploy) echo "🚀 执行完整部署流程..." ./scripts/deploy.sh ;; help|--help|-h) show_help ;; "") show_help ;; *) echo "❌ 未知命令: $1" echo "" show_help exit 1 ;; esac