NocoDB 自托管可视化数据库:从零部署到团队协作的完整指南
【免费下载链接】nocodb🔥 🔥 🔥 A Free & Self-hostable Airtable Alternative项目地址: https://gitcode.com/GitHub_Trending/no/nocodb
NocoDB 是一款可自托管的可视化数据库工具:给 SQLite、PostgreSQL 或 MySQL 套上一层电子表格界面,建表、筛选、共享都靠点击完成。适合不想写 SQL、又希望数据留在自己服务器上的个人和小团队。
这三类人用得最顺
把数据摊在电子表格里的人。运营、行政、PM 经常遇到的问题是:客户信息在 Excel,进度在群聊,权限靠口头约定。NocoDB 把这类表收到一个可共享的地址里,同事不学任何数据库知识就能看和改。
想快速给小产品配数据后台的开发者。你不用为每张表手写增删改查接口和前端页面。把已有数据库表接入 NocoDB,立刻得到表格界面、表单页和 REST API,开发精力留给业务逻辑。
在意数据归属的人。SaaS 表格工具的数据在别人的云上,而 NocoDB 部署在你自己的机器上,界面链接可以按角色分发,数据导出、备份都由你控制。
🐳 用 Docker 十分钟跑起来
环境要求一行说清:一台装好 Docker 的机器(Windows、macOS、Linux 均可),内存给到 1GB 以上就够起步。
默认使用内置 SQLite,一条命令即可启动,数据落在本地./nocodb目录:
docker run -d \ --name noco \ -v "$(pwd)"/nocodb:/usr/app/data/ \ -p 8080:8080 \ nocodb/nocodb:latest如果数据要放进 PostgreSQL,在启动参数里追加一行环境变量指向它即可:
-e NC_DB="pg://host.docker.internal:5432?u=root&p=password&d=d1"容器起来后,浏览器打开http://localhost:8080/dashboard。第一个动作是注册账号——第一个注册的用户自动成为管理员;然后新建一个项目(Project),在项目里创建一个 Base(对应一个数据库),接着点"新建表",给表起个名字、加几列字段,整个流程两分钟内能走完。
先搞懂表和字段,再往里面放数据
NocoDB 的对象层级是:项目 > Base(数据库)> 表 > 列(字段)> 行。字段分类型,常用的有单行文本、多行文本、数字、日期、邮箱、单选、多选、公式、引用(Lookup)、关联(Link)、附件等,建表时从类型列表里选就行,不需要写 DDL。
把数据放进来有三种常见路子:
- 上传 CSV 或 JSON:表页面有导入入口,Excel 导出的 CSV 直接拖进去,列名会自动映射到字段。
- 挂接已有数据库表:如果你的业务表已经在 PostgreSQL 或 MySQL 里,NocoDB 可以直接读取这张表,数据不搬家、不复制,它只做一层展示和操作。想给现有表套个界面时这是最省事的方式。
- 从零录入:手动逐行输入,或者把表单视图链接发给别人,让填表的人替你录入。
同一张表,换几种看法
一张表不必只用表格打开,视图是同一份数据的不同"切面",随时可以并存和切换:
- 网格(Grid):默认形态,适合高频的批量编辑、筛选、排序、分组,日常维护主要用它。
- 看板(Kanban):把某一列的值当作分列依据,每张卡是一行记录,拖动卡片即改状态,适合任务、工单、招聘流程这类有明确状态流转的数据。
- 日历(Calendar):按日期列字段排布记录,适合日程、排期、截止日提醒。
- 画廊(Gallery):以图片为主的卡片网格,适合产品目录、素材库这类"一图一记录"的内容。
除此之外还有甘特、时间线、列表、地图等视图,以及面向展示层的仪表盘,数据模型可以在 视图相关模型目录 里对照着看。
👥 多人一起用:协作与权限怎么配
多人同时编辑同一张表时,变更通过长连接实时同步,不用手动刷新。权限走角色体系:创建角色后,可以按项目、Base、表、视图、甚至单个字段级别决定谁能看、谁能改,例如让某角色只能看到自己部门的行、把客户手机号字段整体隐藏。
每一次操作都有据可查:审计日志(Audit)记录数据的增删改,表内还内置评论,讨论直接挂在具体记录旁边,不用切到聊天工具。
对外连接:API、Webhook 与集成
NocoDB 自带 REST API,用 API Token 签名请求即可读写数据,配套的 SDK 封装了常见操作,写脚本对接时不必手拼请求。数据发生变化时可以触发 Webhook,把事件推给外部系统。
开箱即用的集成分三类:聊天通知(Slack、Discord、Mattermost)、邮件发送(AWS SES、SMTP、MailerSend)、对象存储(AWS S3、Google Cloud Storage、MinIO,用于附件文件落地)。需要更深的对接,从 API 和 Webhook 切入即可,不必动它的前端。
部署怎么选:三档建议
个人使用:就用上面那条docker run加 SQLite,数据全在一个目录里,备份时拷贝该目录即可,不用维护任何数据库服务。
团队使用:跑仓库里的 一键安装脚本,它会自动装好 Docker 依赖,生成包含 PostgreSQL、Redis、Traefik 网关的 compose 配置,并提供域名后自动配置和续期 SSL。生产环境把底层库换成 PostgreSQL 后,压力会明显小于 SQLite。
企业使用:在自动安装的基础上固定版本号而非latest标签,为 PostgreSQL 配置备份与恢复流程,网关层做高可用;扩容上限取决于底层数据库和服务器,没有官方给定的并发天花板。
常见疑问
协议是免费的吗,能商用?仓库采用 Sustainable Use License(见 LICENSE.md),不是 MIT。条款允许将其用于企业内部业务以及非商业的个人用途,免费;以 SaaS 形式对外商业分发则受限。内部生产系统使用没有问题,对外经营前建议通读一遍条款。
没有技术背景能上手吗?日常使用不用写代码,界面即操作;只有部署阶段需要能跑通docker run,这一步可以交给 IT 同事。
能支撑多大规模?没有固定人数上限,瓶颈在底层数据库和服务器资源。小规模、几十人到几百条并发改动,SQLite 足够;数据量大或并发高,换 PostgreSQL 更稳。
手机端能用吗?界面是响应式设计并支持 PWA,手机浏览器打开可用,主要覆盖查看和轻量编辑,密集录入还是建议桌面端。
数据会被锁死在 NocoDB 里吗?挂接模式下的业务表本来就是你自己的数据库,随时可拆;SQLite 模式的数据也是标准数据库文件,表结构定义和行数据都可以导出。
从一条docker run开始,导一个 CSV,建一个看板视图,NocoDB 的用法基本就摸透了。下一步建议:把容器跑起来,导入你手头任意一份表格数据,看看它变成网格和看板之后的样子。
【免费下载链接】nocodb🔥 🔥 🔥 A Free & Self-hostable Airtable Alternative项目地址: https://gitcode.com/GitHub_Trending/no/nocodb
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考