NocoBase
可扩展的开源无代码平台 —— 你自己的 Airtable + Retool。
NocoBase 是一个开源的、插件驱动的无代码/低代码平台,用于构建内部工具、管理面板、仪表板、CRM 和后台应用。在 UI 中定义数据模型,组合表单、表格、看板和图表,连接工作流 —— 当你超出无代码层时,下到 TypeScript 插件。
使用 Pier 部署
- 1 打开 Pier 控制台,点击 Add service。
- 2 从模板列表中选择 NocoBase。
- 3 选择版本、设置服务名称,Pier 会自动配置容器、存储和端口。
- 4 如需 HTTPS,请绑定域名。Traefik 会自动签发 Let's Encrypt 证书。
什么是 NocoBase?
NocoBase 是一个用于构建内部工具、管理面板、CRM 和后台应用的开源平台 —— 无需编写 UI 代码 —— 当无代码碰壁时用 TypeScript 扩展这些工具。
架构一路向下都是插件。核心很小;每个可见功能(集合、块、图表、工作流、 ACL)都是插件。你通过定义数据模型、从预构建块(表、表单、看板、日历、 图表)组合页面,并连接工作流(触发器 → 条件 → 操作)来构建应用。当你 需要无代码层没有的行为时,你编写插件并与之一起发布。
与 Airtable / Retool / NocoDB / Budibase 相比,NocoBase 的最佳点是”从无代码 开始并需要在代码中演进而无需重写的内部工具”。插件模型意味着你不会超出平台 —— 你扩展它。
Pier 如何部署它
NocoBase 在生产中使用 PostgreSQL。本模板在一个 compose 栈中发布 NocoBase 加 PostgreSQL 后端,预连线以便首次启动就有效。
默认端口:NocoBase 的 Web UI 在 Traefik 后(Pier 选择正确的内部端口)。
上传文件卷挂载在 /app/storage;PostgreSQL 数据持久化在自己的卷中。
首次启动时,通过 env 设置管理员 email/密码(Pier 生成安全密码)。登录, 创建你的第一个集合,将块放在页面上,你就有了管理 UI。
何时不要使用 NocoBase
如果你只需要现有 SQL 数据库上的表 UI,NocoDB 更简单。如果你的团队是代码 优先且生活在 TypeScript 中,Retool / AppSmith / Next.js 管理启动器可能 更适合。如果你的用例是公共站点的纯 CMS(文章、页面、媒体),Directus 更适合。NocoBase 是”我想快速构建内部工具并在它们增长时在代码中扩展它们” 的正确答案。
核心功能
无代码数据建模
从 UI 定义集合(表)和字段(文本、数字、日期、关系、文件、JSON)。外键、has-many、many-to-many —— 全部从点击。
页面组合器
拖放块 —— 表格、表单、看板板、日历、甘特、图表、地图。每个块绑定到带过滤、排序、权限的集合。
工作流自动化
可视化工作流构建器 —— 触发器(记录创建、计划、webhook)、条件、操作(发送 email、创建记录、HTTP 请求)。在你的应用内像 Make/n8n。
可插拔架构
NocoBase 一路向下都是插件 —— 核心很小,每个功能都是插件。当无代码碰壁时,用 TypeScript 写你自己的。
基于角色的访问控制
每角色 × 集合 × 操作的粒度权限。字段级可见性。每用户行级过滤。生产就绪 RBAC。
多租户
内置多租户支持 —— 每个租户有隔离数据和配置的单独空间。SaaS 用例友好定价。
应用场景
内部管理面板
替换手动构建的 Django admin / Rails admin / Retool 用于管理你的应用数据库。连接到外部 DB 或使用 NocoBase 自己的。
自定义 CRM
构建特定于你的工作流的 CRM —— 潜在客户管道、交易跟踪、联系人管理 —— 无需支付按席位 SaaS 定价。
项目 / 任务跟踪器
任务 + 看板 + 自动化 + 报告。用你拥有并可扩展的工具替换 Trello/Asana。
小型 ops 团队的后台应用
库存管理、订单处理、内容审核队列 —— SaaS 过度但 Excel 不规范的小后台应用。
带 UI 的无头后端
将 NocoBase 用作带 REST/GraphQL API 的无头数据存储用于单独的前端,加上用于管理的内置 UI。
代码示例
curl https://nocobase.example.com/api/myCollection:list \
-H "Authorization: Bearer $TOKEN" curl -X POST "https://nocobase.example.com/api/leads:create" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{"name":"ACME Corp","email":"[email protected]","stage":"new"}' 触发器:HTTP webhook
→ 条件:payload.event == "deal.won"
→ 操作:在集合 "deals_won_log" 中创建记录
→ 操作:HTTP POST 到 Slack webhook 带交易详情 import { Plugin } from "@nocobase/server";
export class MyPlugin extends Plugin {
async load() {
this.app.resourcer.define({
name: "myCustom",
actions: {
async hello(ctx) {
ctx.body = { message: "来自自定义插件的你好" };
},
},
});
}
} 对比
| vs Airtable | Airtable 是托管的、精致的,限制费用快速增长。NocoBase 是自托管的、免费的,并具有 Airtable 没有的工作流 + 插件可扩展性。 |
| vs Retool / Internal.io | Retool 是托管代码优先的内部工具 —— 强大但按席位定价。NocoBase 是无代码优先、自托管、无席位费用。 |
| vs NocoDB | NocoDB 是"现有 SQL DB 的 Airtable" —— 连接到你现有的 Postgres/MySQL 并公开表 UI。NocoBase 更广泛(工作流、插件、页面组合器);NocoDB 更简单但更窄。 |
| vs Directus(本目录) | Directus 专注于内容管理,带漂亮的管理 UI 在现有 DB 上。NocoBase 专注于带工作流和页面组合器的内部工具。重叠存在;按主要用例选择。 |
| vs Budibase、AppSmith | Budibase 和 AppSmith 针对类似的内部工具空间。NocoBase 的插件架构是差异化因素 —— 当无代码碰壁时用 TypeScript 扩展。 |
常见问题
它使用什么数据库?
它真的免费吗?
如何写插件?
它可以连接到现有数据库吗?
多语言?
多租户如何工作?
备份?
相关服务
在你的 VPS 上部署
NocoBase 是一个开源的、插件驱动的无代码/低代码平台,用于构建内部工具、管理面板、仪表板、CRM 和后台应用。在 UI 中定义数据模型,组合表单、表格、看板和图表,连接工作流 —— 当你超出无代码层时,下到 TypeScript 插件。
部署此服务 →