From 7e6fa6c3eb5d52cc57058644088ca915dfa88878 Mon Sep 17 00:00:00 2001 From: bigtian <7990497@qq.com> Date: Thu, 26 Jun 2025 15:59:05 +0800 Subject: [PATCH] Refactor project structure and update Maven configuration for CRM service --- crm-mcp/Dockerfile_backup | 25 ------------ crm-mcp/Dockerfile_simple | 20 ---------- crm-mcp/build.sh | 40 ++++++++++++++----- .../src/main/resources/application-dev.yml | 2 +- 4 files changed, 31 insertions(+), 56 deletions(-) delete mode 100644 crm-mcp/Dockerfile_backup delete mode 100644 crm-mcp/Dockerfile_simple diff --git a/crm-mcp/Dockerfile_backup b/crm-mcp/Dockerfile_backup deleted file mode 100644 index 5a2db21..0000000 --- a/crm-mcp/Dockerfile_backup +++ /dev/null @@ -1,25 +0,0 @@ -# 备用 Dockerfile - 使用 Eclipse Temurin JDK -FROM eclipse-temurin:17-jre-alpine - -# 设置时区和安装必要工具 -RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && \ - echo 'Asia/Shanghai' >/etc/timezone && \ - apk add --no-cache curl - -# 复制 jar 包 -COPY ./target/crm-mcp-*.jar /app/crm-mcp.jar - -# 设置工作目录 -WORKDIR /app - -# 暴露端口 -EXPOSE 8080 - -# 设置 JVM 参数和启动命令 -CMD ["java", \ - "-Xms512m", \ - "-Xmx1024m", \ - "-Dspring.profiles.active=dev", \ - "-Dspring.ai.mcp.server.stdio=false", \ - "-jar", \ - "crm-mcp.jar"] diff --git a/crm-mcp/Dockerfile_simple b/crm-mcp/Dockerfile_simple deleted file mode 100644 index 456addd..0000000 --- a/crm-mcp/Dockerfile_simple +++ /dev/null @@ -1,20 +0,0 @@ -# 最简单的 Dockerfile,不安装额外工具 -FROM docker.xuanyuan.me/openjdk:17 - -# 复制 jar 包 -COPY ./target/crm-mcp-*.jar /app/crm-mcp.jar - -# 设置工作目录 -WORKDIR /app - -# 暴露端口 -EXPOSE 8080 - -# 设置 JVM 参数和启动命令 -CMD ["java", \ - "-Xms512m", \ - "-Xmx1024m", \ - "-Dspring.profiles.active=dev", \ - "-Dspring.ai.mcp.server.stdio=false", \ - "-jar", \ - "crm-mcp.jar"] diff --git a/crm-mcp/build.sh b/crm-mcp/build.sh index b922d61..bde3c81 100755 --- a/crm-mcp/build.sh +++ b/crm-mcp/build.sh @@ -53,16 +53,36 @@ maven_build() { # Docker 构建 docker_build() { print_message "开始 Docker 构建..." - - if [ "$USE_DOCKER_BUILD" = true ]; then - # 使用多阶段构建 - docker build -t crm-mcp:latest . - else - # 使用测试 Dockerfile(需要先有 jar 包) - docker build -f Dockerfile_test -t crm-mcp:latest . - fi - - print_message "Docker 构建完成" + + # 按优先级尝试不同的 Dockerfile + DOCKERFILES=( + "Dockerfile_simple:最简单版本(推荐)" + "Dockerfile_alpine:使用Alpine+OpenJDK17" + "Dockerfile_test:智能检测系统类型" + "Dockerfile_corretto:使用Amazon Corretto" + "Dockerfile_backup:备用方案" + ) + + for dockerfile_info in "${DOCKERFILES[@]}"; do + dockerfile=$(echo "$dockerfile_info" | cut -d':' -f1) + description=$(echo "$dockerfile_info" | cut -d':' -f2) + + if [ -f "$dockerfile" ]; then + print_message "尝试使用 $dockerfile ($description)..." + + if docker build -f "$dockerfile" -t crm-mcp:latest . --network=host; then + print_message "✅ 使用 $dockerfile 构建成功!" + return 0 + else + print_warning "❌ 使用 $dockerfile 构建失败,尝试下一个..." + sleep 2 + fi + fi + done + + print_error "所有 Dockerfile 构建都失败了" + print_message "请检查网络连接或尝试配置 Docker 镜像源" + exit 1 } # 启动服务 diff --git a/crm-mcp/src/main/resources/application-dev.yml b/crm-mcp/src/main/resources/application-dev.yml index e8f6126..89fd606 100644 --- a/crm-mcp/src/main/resources/application-dev.yml +++ b/crm-mcp/src/main/resources/application-dev.yml @@ -4,7 +4,7 @@ crm: token: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJJUXdrczhuUWc4NnJPQkpuenJDUThtbjl1N3FEQ2lWZyJ9.91GO7OMhVbc0tLBRZ7HYiFDEA92PXE7H1gHduwxWu2I server: servlet: - context-path: crm-mcp + context-path: /crm-mcp spring: main: