Files
sms_forwarder/scripts/docker-manage.sh

87 lines
2.2 KiB
Bash
Executable File

#!/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