
NocoDB 自部署教程:5 分钟把数据库变成无代码在线表格【免费下载链接】nocodb A Free Self-hostable Airtable Alternative项目地址: https://gitcode.com/GitHub_Trending/no/nocodbNocoDB 是一款免费、可自托管的无代码数据库工具,是 Airtable 这类 SaaS 的开源替代方案,适合想把数据攥在自己手里的个人和小团队。自己部署之后,数据留在你自己的服务器上,不经过任何第三方。它解决什么问题团队的客户台账躺在一张 Excel 里。文件在聊天软件里传来传去,几轮下来列名都对不上;权限不设防,谁都能动关键行,改坏了也没人知道是谁干的;筛选和公式,只在搭好它的那台电脑上有用。SaaS 能解这个题,代价是数据落在别人云上,账单跟着人数走;自己写前端加 API,起步就是几周。NocoDB 不要求你搬数据。它直连你已有的 MySQL、PostgreSQL,开箱时用内置 SQLite,把表结构映射成可视化的 Base。界面是标准网格,外加看板、日历、表单几种视图,交互代码都在 packages/nc-gui/ 目录里。 从零到第一个实例最快启动最短的启动方式是一条命令,默认使用内置 SQLite,不用先准备任何数据库:docker run -d --name noco \ -v $(pwd)/nocodb:/usr/app/data/ \ -p 8080:8080 \ nocodb/nocodb:latest-v把当前目录的nocodb/映射进容器内/usr/app/data/。元数据和附件都存在这里,不挂载的话,容器一重建数据就没了。-p 8080:8080是端口映射。8080 被占用时,只改冒号前的宿主机端口,比如-p 9090:8080。第一个注册的账号就是管理员。启动后打开http://localhost:8080/dashboard即可进入。上生产前留意的两处给命令补上两个-e参数,就是生产可用版本:docker run -d --name noco \ -v $(pwd)/nocodb:/usr/app/data/ \ -p 8080:8080 \ -e NC_DBpg://localhost:5432?urootppassworddnocodb \ -e NC_AUTH_JWT_SECRET换成你自己的固定随机字符串 \ nocodb/nocodb:latestNC_DB:把元数据从单文件 SQLite 挪进 PostgreSQL 或 MySQL。为什么必须设:SQLite 只支持单写入,多人并发写入会直接锁库。NC_AUTH_JWT_SECRET:固定随机字符串,必须自备。不设的话每次重启都重新生成签名密钥,所有人的登录态都会失效。仓库里还有带 PostgreSQL 和 Redis 的现成三服务 compose,docker compose up直接起:docker-compose/examples/quickstart-demo/。实战:用一份办公设备台账走完全流程建第一张表在 dashboard 新建项目,项目下添加一张 Base,命名为“设备台账”。加五列:字段类型用途设备名称SingleLineText主标识,每行一台设备类别SingleSelect电脑 / 外设 / 网络设备使用人User从工作区直接选人保修到期Date供日历视图做提醒状态SingleSelect在用 / 待修 / 已报废还有 Number、Attachment、Formula、Rollup 等几十种类型,视图组件完整清单在 packages/nc-gui/components/smartsheet/。切换视图表默认是 Grid 视图,标准电子表格形态,适合批量录入和调列。看板:左上角加一个,把“状态”设为分组字段,每行变成列里的卡片,跨列拖一下等于改状态,处理“待修”设备最顺手。日历:行按“保修到期”落进对应日期,一眼看出哪些设备快脱保。表单:把表变成单页录入页,给没有账号的人用,见下节。让团队外的人也能用第一选择是 Form 视图:没账号的同事也能填表提交“新增设备”。权限边界很明确,只能写表单上显示的字段,看不到已有行和其他列。第二选择是 Share View:公开或带密码的只读链接,接收方只能看到该视图里的内容。需要程序化访问时,在 Base 里生成 API token 调 REST 即可,官方 SDK 在 packages/nocodb-sdk/。部署选型速查你的情况存储/后端选择部署形态个人试用、人数少内置 SQLite,零配置单容器小团队正式使用PostgreSQL Rediscompose 三服务,仓库有现成配置已有 MySQL/PG 数据源直接连接,不自带库单容器 NC_DB高并发、要跑导入导出任务PostgreSQL Redisapp 与 worker 分离,参考 deployment-worker.yaml原则一句话:单文件存储省事,但扛不住并发写入,人超过一个就换 PostgreSQL。进阶配置速查默认不碰任何变量也能跑。只有碰到下面四种情况才去查对应变量,所有NC_开头的变量统一在 utils/envs.ts 读取:什么时候才碰变量怎么设外部打不开分享链接、发不出邮件NC_SITE_URL实例的公网访问地址多容器部署、要实时同步NC_REDIS_URLredis://host:6379形式元数据换出 SQLiteNC_DBpg://或mysql://开头的连接串多人生产访问NC_AUTH_JWT_SECRET固定随机字符串 常见问题自查手册容器重建后数据没了→ 原因:没挂数据卷。解决:补上-v $(pwd)/nocodb:/usr/app/data/再重建。8080 端口打不开、页面加载不出来→ 原因:宿主机端口被其他服务占用。解决:映射改成-p 9090:8080,用新端口访问。每次重启都要重新登录→ 原因:NC_AUTH_JWT_SECRET没固定,启动时签名密钥变了。解决:设一个固定随机字符串。外部打不开分享链接、收不到邮件→ 原因:NC_SITE_URL未配置,实例生成不出对外 URL。解决:设为实例公网地址。多人同时写入报库被锁→ 原因:SQLite 单写入。解决:用NC_DB把元数据挪进 PostgreSQL。接下来做这三件事把手头一份 CSV 或 Excel 导入 Base,换掉那张反复转发的表生成一个 API token,调一次 REST 端点,验证程序化访问把一个 Grid 切成 Kanban,拖两行试试板协作官方文档的 self-hosting 章节有完整的部署与变量说明;部署或使用中卡住,可以直接去项目的 Discord 社区提问。【免费下载链接】nocodb A Free Self-hostable Airtable Alternative项目地址: https://gitcode.com/GitHub_Trending/no/nocodb创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考