diff --git a/backend/mci-server/src/main/java/com/sino/mci/admin/controller/HealthController.java b/backend/mci-server/src/main/java/com/sino/mci/admin/controller/HealthController.java new file mode 100644 index 0000000..205fab1 --- /dev/null +++ b/backend/mci-server/src/main/java/com/sino/mci/admin/controller/HealthController.java @@ -0,0 +1,18 @@ +package com.sino.mci.admin.controller; + +import com.sino.mci.shared.web.ApiResponse; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import java.util.Map; + +@RestController +@RequestMapping("/api/v1/health") +public class HealthController { + + @GetMapping + public ApiResponse> health() { + return ApiResponse.ok(Map.of("status", "ok")); + } +} diff --git a/backend/mci-server/src/main/java/com/sino/mci/admin/security/AuthInterceptor.java b/backend/mci-server/src/main/java/com/sino/mci/admin/security/AuthInterceptor.java index 38bfb38..913d43a 100644 --- a/backend/mci-server/src/main/java/com/sino/mci/admin/security/AuthInterceptor.java +++ b/backend/mci-server/src/main/java/com/sino/mci/admin/security/AuthInterceptor.java @@ -16,7 +16,8 @@ public class AuthInterceptor implements HandlerInterceptor { String method = request.getMethod(); if (path.contains("/api/v1/account/login") || ("POST".equals(method) && isExactPath(path, "/api/v1/account/tenant")) - || ("POST".equals(method) && isExactPath(path, "/api/v1/account/user"))) { + || ("POST".equals(method) && isExactPath(path, "/api/v1/account/user")) + || isExactPath(path, "/api/v1/health")) { return true; } diff --git a/backend/mci-server/src/main/java/com/sino/mci/config/WebConfig.java b/backend/mci-server/src/main/java/com/sino/mci/config/WebConfig.java index 0e43a01..9aa5198 100644 --- a/backend/mci-server/src/main/java/com/sino/mci/config/WebConfig.java +++ b/backend/mci-server/src/main/java/com/sino/mci/config/WebConfig.java @@ -19,6 +19,7 @@ public class WebConfig implements WebMvcConfigurer { .excludePathPatterns( "/msg-platform/api/v1/account/login", "/api/v1/account/login", "/msg-platform/api/v1/account/tenant", "/api/v1/account/tenant", - "/msg-platform/api/v1/account/user", "/api/v1/account/user"); + "/msg-platform/api/v1/account/user", "/api/v1/account/user", + "/msg-platform/api/v1/health", "/api/v1/health"); } } diff --git a/docker-compose.yml b/docker-compose.yml index 09057ad..90e36aa 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -93,7 +93,7 @@ services: rabbitmq: condition: service_healthy healthcheck: - test: ["CMD", "curl", "-fsS", "http://localhost:8080/msg-platform/actuator/health"] + test: ["CMD", "curl", "-fsS", "http://localhost:8080/msg-platform/api/v1/health"] interval: 10s timeout: 5s retries: 15