build-images.sh 2.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. #!/bin/bash
  2. # 批量构建所有服务的 Docker 镜像
  3. # 使用说明:
  4. # 1. 将所有 jar 包上传至服务器 /docker/jar 目录
  5. # 2. 在项目根目录执行:bash build-images.sh
  6. # 3. 如需指定版本号:bash build-images.sh 2.4.1
  7. VERSION=${1:-2.4.1}
  8. echo "======================================================"
  9. echo " 开始构建所有服务镜像,版本号:${VERSION}"
  10. echo "======================================================"
  11. # 构建函数
  12. build_image() {
  13. local service=$1 # 服务名,如 ruoyi-gateway
  14. local dockerfile=$2 # Dockerfile 路径,相对于项目根目录
  15. local image="ruoyi/${service}:${VERSION}"
  16. echo ""
  17. echo "------------------------------------------------------"
  18. echo " 构建镜像:${image}"
  19. echo " Dockerfile:${dockerfile}"
  20. echo "------------------------------------------------------"
  21. docker build -f "${dockerfile}" -t "${image}" .
  22. if [ $? -eq 0 ]; then
  23. echo " [成功] ${image}"
  24. else
  25. echo " [失败] ${image} 构建失败,请检查日志"
  26. exit 1
  27. fi
  28. }
  29. # ===================== 网关 =====================
  30. build_image "ruoyi-gateway" "/docker/jar/gateway-Dockerfile"
  31. # ===================== 认证 =====================
  32. build_image "ruoyi-auth" "/docker/jar/auth-Dockerfile"
  33. # ===================== 业务模块 =====================
  34. build_image "ruoyi-system" "/docker/jar/system-Dockerfile"
  35. build_image "ruoyi-job" "/docker/jar/job-Dockerfile"
  36. build_image "ruoyi-resource" "/docker/jar/resource-Dockerfile"
  37. build_image "ruoyi-product" "/docker/jar/product-Dockerfile"
  38. build_image "ruoyi-external" "/docker/jar/external-Dockerfile"
  39. build_image "ruoyi-order" "/docker/jar/order-Dockerfile"
  40. build_image "ruoyi-customer" "/docker/jar/customer-Dockerfile"
  41. build_image "ruoyi-bill" "/docker/jar/bill-Dockerfile"
  42. build_image "ruoyi-mall" "/docker/jar/mall-Dockerfile"
  43. # ===================== 可视化组件 =====================
  44. build_image "ruoyi-monitor" "/docker/jar/monitor-Dockerfile"
  45. build_image "ruoyi-snailjob-server" "/docker/jar/snailjob-Dockerfile"
  46. echo ""
  47. echo "======================================================"
  48. echo " 所有镜像构建完成!共 13 个服务"
  49. echo "======================================================"
  50. echo ""
  51. echo "镜像列表:"
  52. docker images | grep "ruoyi/" | grep "${VERSION}"