docker-deploy.sh 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. #!/bin/bash
  2. echo "======================================"
  3. echo "开始构建和部署信用卡生成 API 到 Docker"
  4. echo "======================================"
  5. # 停止并删除旧容器
  6. echo "1. 停止旧容器..."
  7. docker stop yibao-bankcard-api 2>/dev/null || true
  8. docker rm yibao-bankcard-api 2>/dev/null || true
  9. # 构建 Docker 镜像
  10. echo "2. 构建 Docker 镜像..."
  11. docker build -t yibao-bankcard-api .
  12. if [ $? -ne 0 ]; then
  13. echo ""
  14. echo "❌ Docker 构建失败!"
  15. echo ""
  16. echo "可能的原因:"
  17. echo " 1. 无法连接到 Docker Hub"
  18. echo " 2. 网络问题"
  19. echo ""
  20. echo "解决方案:"
  21. echo " - 配置 Docker 镜像加速器(见 README.md)"
  22. echo " - 或使用本地运行:bash start-server.sh"
  23. exit 1
  24. fi
  25. # 启动容器
  26. echo "3. 启动容器..."
  27. docker run -d -p 8666:8666 --name yibao-bankcard-api yibao-bankcard-api
  28. if [ $? -ne 0 ]; then
  29. echo "❌ 容器启动失败!"
  30. exit 1
  31. fi
  32. # 等待服务启动
  33. echo "4. 等待服务启动(5秒)..."
  34. sleep 5
  35. # 检查容器状态
  36. echo "5. 检查容器状态..."
  37. docker ps | grep bankcard-api
  38. echo ""
  39. echo "======================================"
  40. echo "✅ 部署完成!"
  41. echo "======================================"
  42. echo ""
  43. echo "API 地址: http://localhost:8666/api/card"
  44. echo ""
  45. echo "常用命令:"
  46. echo " 查看日志: docker logs -f yibao-bankcard-api"
  47. echo " 停止服务: docker stop yibao-bankcard-api"
  48. echo " 重启服务: docker restart yibao-bankcard-api"
  49. echo " 删除容器: docker rm -f yibao-bankcard-api"
  50. echo " 测试 API: bash test-api.sh"
  51. echo ""