Skip to main content

安装部署

低代码接口开发平台安装部署

环境要求

服务器

  • 操作系统:Linux 3.10及以上版本、Windows 10及以上版本
  • CPU:4核及以上,支持 x86_64 和 aarch64 架构
  • 内存:4GB及以上
  • 磁盘空间:100GB及以上

浏览器

  • Chrome 109及以上版本

安装

tar -xf crud-版本-打包日期-架构.tar.gz

启动

在命令行中,先使用 cd 命令切换至安装目录,然后执行 sh start.sh 启动服务。

cd crud
sh start.sh

如果下载的是未内置 JDK 的版本,需要先编辑 start.sh 文件,配置 JAVA_HOME 环境变量。服务依赖 JDK 21 环境。

登录

系统启动后,使用浏览器打开低代码接口开发平台地址

用户管理

在安装目录下的 user.json 文件中手动配置开发与测试账号,并支持设置用户登录的 IP 白名单。多个 IP 地址请使用英文逗号分隔。

注意事项

  • 配置文件路径:user.json
  • IP 限制规则:若将 IP 设置为 0.0.0.0,则表示不限制该用户的登录来源地址。
  • 格式规范:该文件由 Python JSON 库解析,请严格遵守 JSON 语法规范。特别注意:严禁在最后一个元素后添加多余的逗号,否则会导致解析失败。
  • 每次修改 user.json 文件都需要重启服务。
cd crud
sh stop.sh
sh start.sh

正确配置

错误配置

部署模式

将低代码接口开发平台集成至现有系统,使所有请求都在同一个域名下,同时共享现有系统访问认证与鉴权。

Nginx作为统一入口

1. 架构概述

为实现微服务架构的统一访问入口,建议采用 Nginx 作为反向代理服务器。通过配置 URI 路径映射,将不同业务模块的请求转发至对应的后台微服务地址。

路由策略建议:

  • 以低代码接口开发平台的一级目录作为反向代理的路由前缀。
  • 例如:/crud 作为第一层目录编号,对应特定系统或模块的接口集合(如 CRUD 操作相关的微服务)。

2. Nginx 配置示例

以下为 /crud 路径的反向代理配置模板,请根据实际后端服务地址进行调整:

location /crud {
# --- 基础代理设置 ---
proxy_pass http://127.0.0.1:8888/crud;
proxy_redirect off;

# --- HTTP 版本与连接升级支持(WebSocket 等) ---
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $connection_upgrade;

# --- 请求头透传(保留客户端真实信息) ---
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-NginX-Proxy true; # 注意:原配置中拼写为 "Porxy",建议修正为 "Proxy"

# --- 性能与安全相关 ---
client_max_body_size 100m; # 允许最大上传文件大小
chunked_transfer_encoding off; # 禁用分块传输编码(视后端兼容性而定)
add_header Cache-Control no-cache; # 禁止缓存动态接口响应
}

3. 关键配置说明

配置项说明
proxy_pass后端微服务的实际地址。确保末尾路径与 location 匹配,避免路径重复或丢失。
X-Real-IP / X-Forwarded-For用于后端服务获取客户端真实 IP 地址,对日志记录和安全审计至关重要。
Upgrade & Connection支持 WebSocket 或长连接协议升级,若无需此类功能可省略。
client_max_body_size根据业务需求调整文件上传大小限制,默认值可能过小导致大文件上传失败。
Cache-Control: no-cache防止浏览器或中间代理缓存 API 响应,确保数据实时性。

4. 注意事项

  • 路径一致性:确认后端微服务是否期望接收包含 /crud 前缀的请求。如果后端服务根路径即为 /,则 proxy_pass 应改为 http://127.0.0.1:8888/,以避免路径重复。
  • 拼写检查:原配置中 X-NginX-Porxy 存在拼写错误(PorxyProxy),虽不影响核心代理功能,但建议修正以保持规范性。
  • 安全加固:生产环境中建议限制 proxy_pass 的目标 IP 范围,并启用 HTTPS 终止以提升安全性。
  • 多服务扩展:如需代理多个微服务,可复制此 location 块,修改路径前缀(如 /user, /order)及对应的后端地址。

提示:完成配置后,请执行 nginx -t 验证语法正确性,再重载配置 nginx -s reload 生效。

Spring Cloud Gateway 作为统一入口

1. 架构概述

在微服务体系中,Spring Cloud Gateway 是基于 Spring 生态的 API 网关,提供了强大的路由转发、过滤器链与动态路由能力。
当需要将低代码接口开发平台(如 crud 服务)并入现有微服务网关时,可以通过配置路由规则,将特定路径前缀(例如 /crud)的请求转发至后端平台服务,同时支持鉴权、限流、日志等统一治理。

路由策略建议:

  • 使用 Path 路由断言匹配所有 /crud/** 的请求。
  • 保留 StripPrefix 过滤器按需去除路径前缀,以确保后端服务收到的请求路径符合预期。
  • 透传客户端真实 IP 信息及身份标识,保持与原有认证体系的兼容。

2. Spring Cloud Gateway 配置示例

方式一:YAML 配置文件(推荐)

在网关模块的 application.yml 中添加如下路由配置:

spring:
cloud:
gateway:
routes:
- id: crud-service
uri: http://127.0.0.1:8888 # 后端真实服务地址
predicates:
- Path=/crud/** # 匹配所有 /crud 路径的请求
filters:
- PreserveHostHeader # 保留原始 Host 头
- AddRequestHeader=X-Forwarded-Proto, https
- AddRequestHeader=X-Forwarded-For, ${X-Forwarded-For}
方式二:Java 代码配置(RouteLocator)

如果倾向编程式路由定义,可以在配置类中创建 RouteLocator Bean:

@Configuration
public class GatewayConfig {

@Bean
public RouteLocator customRouteLocator(RouteLocatorBuilder builder) {
return builder.routes()
.route("crud-service", r -> r
.path("/crud/**")
.filters(f -> f
.preserveHostHeader()
.addRequestHeader("X-Forwarded-Proto", "https")
.addRequestHeader("X-Forwarded-For", "true")
)
.uri("http://127.0.0.1:8888")
)
.build();
}
}

3. 关键配置说明

配置项说明
id路由的唯一标识,便于监控与动态管理。
uri后端低代码接口开发平台的真实地址,可以是 http://ip:portlb://service-name(注册中心服务名)。
Path 断言匹配所有以 /crud 开头的请求,网关将此类请求按规则转发。
PreserveHostHeader保持原始 HTTP Host 头,避免后端因 Host 不匹配导致 404 或其他校验问题。
X-Forwarded-* 类请求头透传客户端的真实 IP、协议等信息,确保后端能获取实际来源。Gateway 默认携带 X-Forwarded-For 等头,但也可手动增强。

4. 增强特性与集成建议

  • 认证与鉴权
    可在网关层统一集成 Spring Security 或 OAuth2,通过自定义 GlobalFilter 校验 Token、Cookie 等,使 /crud 服务本身无需重复实现认证逻辑。

  • 跨域(CORS)配置
    若存在前端跨域访问,可在网关统一配置跨域,无需到后端每个服务单独处理:

    spring:
    cloud:
    gateway:
    globalcors:
    cors-configurations:
    "[/**]":
    allowedOrigins: "*"
    allowedMethods: "*"
    allowedHeaders: "*"
    allowCredentials: true

5. 注意事项

  • 请求头清理与安全性
    避免将内部敏感的请求头(如 CookieAuthorization)透传给下游前,进行适当的裁剪和校验,防止信息泄露。

  • 文件上传与请求体大小
    Spring Cloud Gateway 默认无 client_max_body_size 限制,但实际请求体大小受制于内存或后端配置。如需拦截大文件,请设置 spring.codec.max-in-memory-size 或使用自定义过滤器校验。

  • 超时设置
    针对 /crud 中可能长期执行的数据接口,建议配置合理的全局或路由级超时时间:

    spring:
    cloud:
    gateway:
    httpclient:
    response-timeout: 30s
    connect-timeout: 5000
  • 版本兼容
    请确保使用的 Spring Cloud Gateway 版本与 Spring Boot 版本兼容,并配置好对应的 Netty 依赖。


提示:完成配置后,启动网关服务并访问 http://gateway-host:port/uri 验证路由是否转发至目标平台,观察后端日志与响应状态。

导出导入

建议将开发环境与生产环境分离。日常开发在开发环境中完成,接口开发完毕后,从开发环境导出已通过测试的接口配置文件,再将其导入生产环境。导入后,请根据生产环境的实际情况修改数据库连接配置。除非已验证 SQL 模板兼容不同类型的数据库,否则不建议更改数据库类型。

导出

导出的内容包含当前查询条件下的完整记录集与数据库配置,并以 JSON 格式保存为配置文件。日常开发中,建议每日导出接口配置,与代码、文档一同提交至版本库。

导入

点击"导入"按钮,弹出对话框,选择 JSON 格式的接口配置文件,点击"确认"执行导入操作。

注意事项

  • 导入前请务必先执行导出操作,以备份当前数据库及接口配置。
  • 数据库导入策略:以数据库 ID 为主键,仅写入尚不存在的记录,已存在的记录将跳过。
  • 接口导入策略:以接口 URI 编号作为唯一值判断依据,对不存在的记录执行写入,对已存在的记录进行更新。
  • 导入完成后请重启服务,以确保接口配置即时生效。

其他

运行日志

服务会在 crud 目录同一层创建一个 logs 目录,并记录运行日志与访问日志,日志保存 7 天,可根据日志文件排查服务故障。

  • crud_dev.log:记录接口开发模块运行日志,单个文件最大 10MB,最多 10 个文件。
  • crud_api.yyyyMMdd.log:记录接口服务模块的运行日志,按天创建日志文件。
  • access-yyyy.MM.dd.log:记录接口服务模块的访问记录,以 JSON 行格式记录接口调用审计信息,按天创建日志文件,可使用 Filebeat 读取日志,发送到 ES 进行日志检索分析。

运行模式

运行模式参数对应 application.yml 文件中的 run.mode 配置项。其中,dev 表示开发模式,接口配置即时生效,适用于开发、测试场景;prod 表示生产模式,接口配置仅在启动时加载一次。生产环境建议启用 prod 模式,prod 模式更新接口配置,需要重启服务。