diff --git a/backend/internal/handler/admin/account_handler.go b/backend/internal/handler/admin/account_handler.go index e9a27ba6..1c26fa8d 100644 --- a/backend/internal/handler/admin/account_handler.go +++ b/backend/internal/handler/admin/account_handler.go @@ -354,7 +354,8 @@ func (h *AccountHandler) SyncFromCRS(c *gin.Context) { SyncProxies: syncProxies, }) if err != nil { - response.ErrorFrom(c, err) + // Provide detailed error message for CRS sync failures + response.InternalError(c, "CRS sync failed: "+err.Error()) return } diff --git a/deploy/docker-compose-test.yml b/deploy/docker-compose-test.yml index 1a02fedd..bcda3141 100644 --- a/deploy/docker-compose-test.yml +++ b/deploy/docker-compose-test.yml @@ -32,6 +32,8 @@ services: volumes: # Data persistence (config.yaml will be auto-generated here) - sub2api_data:/app/data + # Mount custom config.yaml (optional, overrides auto-generated config) + - ./config.yaml:/app/data/config.yaml:ro environment: # ======================================================================= # Auto Setup (REQUIRED for Docker deployment) @@ -95,6 +97,12 @@ services: - GEMINI_OAUTH_CLIENT_SECRET=${GEMINI_OAUTH_CLIENT_SECRET:-} - GEMINI_OAUTH_SCOPES=${GEMINI_OAUTH_SCOPES:-} - GEMINI_QUOTA_POLICY=${GEMINI_QUOTA_POLICY:-} + + # ======================================================================= + # Security Configuration (URL Allowlist) + # ======================================================================= + # Allow private IP addresses for CRS sync (for internal deployments) + - SECURITY_URL_ALLOWLIST_ALLOW_PRIVATE_HOSTS=${SECURITY_URL_ALLOWLIST_ALLOW_PRIVATE_HOSTS:-true} depends_on: postgres: condition: service_healthy diff --git a/deploy/docker-compose.yml b/deploy/docker-compose.yml index 9c786d6d..17e75e2a 100644 --- a/deploy/docker-compose.yml +++ b/deploy/docker-compose.yml @@ -28,6 +28,8 @@ services: volumes: # Data persistence (config.yaml will be auto-generated here) - sub2api_data:/app/data + # Mount custom config.yaml (optional, overrides auto-generated config) + - ./config.yaml:/app/data/config.yaml:ro environment: # ======================================================================= # Auto Setup (REQUIRED for Docker deployment) @@ -93,9 +95,11 @@ services: - GEMINI_QUOTA_POLICY=${GEMINI_QUOTA_POLICY:-} # ======================================================================= - # Security Configuration + # Security Configuration (URL Allowlist) # ======================================================================= - SECURITY_URL_ALLOWLIST_UPSTREAM_HOSTS=${SECURITY_URL_ALLOWLIST_UPSTREAM_HOSTS:-} + # Allow private IP addresses for CRS sync (for internal deployments) + - SECURITY_URL_ALLOWLIST_ALLOW_PRIVATE_HOSTS=${SECURITY_URL_ALLOWLIST_ALLOW_PRIVATE_HOSTS:-false} depends_on: postgres: condition: service_healthy