自托管 Teable:网格看板都能开,社区版和全功能版到底差在哪

自托管 Teable:网格看板都能开,社区版和全功能版到底差在哪

自托管 Teable:网格看板都能开,社区版和全功能版到底差在哪

业务台账一旦从 Excel 搬进云表格,舒服的是协作,难受的是数据主权:行数涨到十万、附件堆到几个 GB、权限要从「能看整张表」收成「销售只能改自己的线索」,云端套餐和导出路径就会开始卡脖子。开源社区里,这类「表格皮 + 数据库骨」的产品并不少,真正把 PostgreSQL 当主存储、表格当交互层、还能自托管跑起来的,目前最完整的一条线是 Teable(官方仓库 teableio/teable,文档 help.teable.ai)。

本文源文是一篇微信推荐贴,抓取时撞上验证页,正文按官方 README、部署文档和功能手册重写。本地仓库里已有一篇 ai-pm-agent-workflow,讲的是怎么用飞书多维表格做 Agent 工作流,不是同一款产品,不要混为一谈。Teable 社区版协议是 AGPL-3.0(packages/ 下部分包为 MIT),镜像和功能边界以 2026 年官方文档为准。

封面:Teable 自托管能力边界


一、它不是又一张「在线 Excel」,而是 Postgres 上的协作层

Teable 官方把自己写成 AI Spreadsheet for Business:表面上是网格、筛选、分组、公式,底下每张业务表都落在 PostgreSQL 里。这一点决定了它和飞书多维表格、Airtable 的分界——后者把数据关在厂商存储里,前者把「表格 UI + 实时协作 + REST API + 原生 SQL」叠在你自己的库上。GitHub 仓库当前约 2.1 万 Star,架构是典型的 monorepo:apps/nextjs-app 做前端,apps/nestjs-backend 做后端,packages/db-main-prisma 管 schema 和迁移,packages/sdk 给扩展用。

业务侧你看到的是 Space(空间)→ Base(基地/应用)→ Table(表)→ Field / Record / View。字段类型已经覆盖单行/长文本、数字、单选/多选、日期、评分、附件、关联(Link)、Lookup、Rollup、条件 Lookup/Rollup、公式、用户、创建人/修改人、自动编号,以及可以点一下就触发工作流的 Button。计算单元格有硬上限:单个计算单元格 256 KB。官方点名的踩坑场景是:一条客户记录关联了几百条跟进,Lookup 把所有长文本拉进一格,就会报 Computed cell value is too large;表其余部分继续算,这一格保留旧值。解法是 Rollup 计数/求和,或只 Lookup 短字段(状态、金额),全文去关联表里读。

视图不是装饰。官方手册里已经落地的五种是:

视图 适合干什么 关键约束
网格 Grid 日常录入、批量改、筛选分组、冻结列 隐藏字段只改当前视图,不删数据
表单 Form 对外收集,一条提交变一条记录 可接「表单提交」自动化触发器
看板 Kanban 按状态/阶段拖卡片 分组字段要先设计好
画廊 Gallery 产品图册、资产库 依赖附件字段
日历 Calendar 排期、会议、截止日期 需要日期字段

实时协作走 Redis 的 pub/sub:单元格级更新不用刷新页面;权限可以从空间级收到基地级,再叠加 Authority Matrix(权限矩阵)做「同一张 Base 里销售只能改自己的行」。记录有评论、变更历史、归档和回收站。这些能力在 Cloud、全功能自托管、基础版自托管 三条路径上都在,并不被锁在付费云里。

官方对基础版自托管的定位很干脆:表格、协作、API、自动化都有;AI 对话/智能体、App Builder、沙箱预览没有。想要后三者,走 Cloud 或 teableio/teable-deployment 全功能平面。


二、三条部署路径:先选能力,再选机器

很多人一上来就 docker compose up,上线后才发现「怎么没有 AI 对话」。2026 年官方把运行方式收成三张表,选型应该先看这一列,而不是先看镜像名。

Teable Cloud 全功能自部署 基础版自部署
表格 / 协作 / API / 自动化 有 有 有
AI 对话、智能体 有 有 无
App Builder(生成并发布应用) 有 有 无
沙箱 / 预览 有 有 无
跑在哪 teable.ai 单机 Docker 或 Kubernetes 应用 + PostgreSQL(+ Redis)
入口 直接注册 teable-deployment Docker 文档

基础版文档写明:Compose 适合 50 人以内评估和小团队。机器建议至少 2 核 / 4GB 内存 / 40GB 磁盘,系统用 Ubuntu 20.04+ 这类常见发行版。全功能平面可以装在现有基础版旁边,官方迁移指南承诺 数据原地不动——已经跑着社区实例的人,不必先导出再导入。

自托管 Teable:网格看板都能开,社区版和全功能版到底差在哪

还有一条「交给 Agent 部署」的路径:把 teableio/teable-deployment 丢给 Claude Code / Codex,准备三样东西即可:

1. 一个基础域名,例如 teable.example.com;

2. 该 zone 的 DNS API token(阿里云解析、DNSPod、Cloudflare 都行,权限尽量只开这一个 zone);

3. 目标访问权限:本机只要 Docker(local 模式走 *.localhost,连域名都可以省);云服务器要 SSH;托管集群(ACK / TKE / 自建 K8s)要能装 Helm 的 kubeconfig。

本机 local 模式适合先把表格、视图、自动化跑通;生产环境再换域名和证书。不要把评估实例的默认密码、SECRET_KEY 原样带进公网。

三种部署路径对比


三、Docker Compose 最小闭环:三容器、一套 .env

基础版最小拓扑是 Teable 应用 + PostgreSQL 15 + Redis 7。国内文档给的是阿里云镜像,国际文档给的是 ghcr.io/teableio/teable:latest。完整功能镜像里带企业能力,付费功能要许可证才会亮;只要社区功能,可以改用 teable-community 标签(ghcr.io/teableio/teable-community:latest 或 registry.cn-shenzhen.aliyuncs.com/teable/teable-community:latest)。仓库示例还保留 dockers/examples/standalone/:cd 进去改 .env 再 docker compose up -d。

先装 Docker,再落文件:

curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
docker --version
docker compose version

mkdir teable && cd teable

docker-compose.yaml 最小集(国内镜像,端口 3000,Postgres 映射到宿主机 42345 方便排错):

services:
teable:
image: registry.cn-shenzhen.aliyuncs.com/teable/teable:latest
restart: always
ports:
- "3000:3000"
volumes:
- teable-data:/app/.assets:rw
env_file:
- .env
environment:
- NEXT_ENV_IMAGES_ALL_REMOTE=true
networks:
- teable
depends_on:
teable-db:
condition: service_healthy
teable-cache:
condition: service_healthy
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:3000/health"]
start_period: 5s
interval: 5s
timeout: 3s
retries: 3

teable-db:
image: registry.cn-shenzhen.aliyuncs.com/teable/postgres:15.4
restart: always
ports:
- "42345:5432"
volumes:
- teable-db:/var/lib/postgresql/data:rw
environment:
- POSTGRES_DB=${POSTGRES_DB}
- POSTGRES_USER=${POSTGRES_USER}
- POSTGRES_PASSWORD=${POSTGRES_PASSWORD}
networks:
- teable
healthcheck:
test: ["CMD-SHELL", "sh -c 'pg_isready -U ${POSTGRES_USER} -d ${POSTGRES_DB}'"]
interval: 10s
timeout: 3s
retries: 3

teable-cache:
image: registry.cn-shenzhen.aliyuncs.com/teable/redis:7.2.4
restart: always
expose:
- "6379"
volumes:
- teable-cache:/data:rw
networks:
- teable
command: redis-server --appendonly yes --requirepass ${REDIS_PASSWORD}
healthcheck:
test: ["CMD", "redis-cli", "--raw", "incr", "ping"]
interval: 10s
timeout: 3s
retries: 3

networks:
teable:
name: teable-network

volumes:
teable-db: {}
teable-data: {}
teable-cache: {}

.env 里真正会让你凌晨起来的,是这几项(密码请换成 8 位以上随机串,不要照抄占位符):

POSTGRES_PASSWORD=replace_this_password
REDIS_PASSWORD=replace_this_password
SECRET_KEY=replace_this_secret_key

# 末尾不要带斜杠;必须是浏览器实际访问的地址
PUBLIC_ORIGIN=http://127.0.0.1:3000

POSTGRES_HOST=teable-db
POSTGRES_PORT=5432
POSTGRES_DB=teable
POSTGRES_USER=teable

REDIS_HOST=teable-cache
REDIS_PORT=6379
REDIS_DB=0

PRISMA_DATABASE_URL=postgresql://${POSTGRES_USER}:${POSTGRES_PASSWORD}@${POSTGRES_HOST}:${POSTGRES_PORT}/${POSTGRES_DB}
BACKEND_CACHE_PROVIDER=redis
BACKEND_CACHE_REDIS_URI=redis://default:${REDIS_PASSWORD}@${REDIS_HOST}:${REDIS_PORT}/${REDIS_DB}

启动:

docker compose pull
docker compose up -d
docker compose logs -f teable

浏览器打开 http://127.0.0.1:3000。没有预设管理员,也不走 teable.ai 云账号。实例上第一个注册的用户自动成为管理员。局域网访问就把 PUBLIC_ORIGIN 改成 http://192.168.x.x:3000,域名访问改成 https://teable.example.com,改完必须重启。官方反复强调:导入失败、图片传不上去,十有八九是 PUBLIC_ORIGIN 写错或末尾多了 /。大规模复制粘贴还要求 HTTPS,否则浏览器不给异步剪贴板。

生产附件不要长期堆在容器卷里。文档建议接 S3 兼容存储(MinIO / OSS / COS / OBS)。MinIO 要准备 public + private 双桶:头像和表单头图走公开桶,记录附件走私有桶。阿里云 OSS 的公开桶必须 public-read 并放行 CORS,否则浏览器读图会失败。接本机已有 Postgres 时,POSTGRES_HOST 禁止写 127.0.0.1(那是容器自己),应写 host.docker.internal 或宿主机局域网 IP。

源码开发路径也留在仓库里:corepack enable && pnpm install && pnpm g:build,make switch-db-mode 在 sqlite / postgres 间切换,然后 cd apps/nestjs-backend && pnpm dev(会顺带拉起 Next)。评估业务请用 Compose,不要拿开发服务器当生产。


四、自动化、插件、SQL:表格什么时候变成系统

基础版自托管已经带自动化,不必先买 AI。触发器覆盖:记录创建/更新、记录满足条件、表单提交、定时、按钮点击、Webhook、邮箱到达。动作侧可以建/改/查记录、跨 Base 读写、HTTP 请求、条件分支、循环批处理、沙箱脚本;带许可证的平面再叠加 AI 生成、AI 写脚本。官方给的可复用模式包括:状态变更打时间戳、截止前提醒、Slack / Discord / Teams 推送、定时摘要、表单自动分类、跨 Base 同步。写自动化时务必加过滤和「监视字段」,否则一次批量导入会把队列打爆。

开发者入口有三层,别只盯着 UI:

1. REST API:每个 Base 都能当后端用,Token 放在空间凭证里,给脚本、iPaaS、自建服务调。

2. 原生 SQL:数据在 PostgreSQL,可直接给 Metabase、Power BI、Appsmith 或你自己的查询用;这是 Teable 相对「纯云表格」最硬的优势。

3. 插件 / SDK:仓库 packages/sdk 面向扩展;产品侧已有图表、脚本类插件,旧 README 里「Coming Soon」的扩展位,现网文档已经按可用功能写,不要再按 2023 年的路线图做选型。

AI 能力(对话建表、AI 字段、App Builder、Connect Everything 从 Airtable / Baserow / NocoDB / Jira 迁数据)挂在 Cloud 或全功能自托管上。自托管要接自己的模型,走「自定义模型提供商」,把兼容 OpenAI 的 base URL 和 Key 配进凭证,再授权给 AI 字段、自动化和对话。Key 只放实例凭证库,不要写进 Git 或微信正文。

权限上,先用空间邀请和基地邀请分开「全空间同事」和「只看一张 Base 的外包」;再对销售/客服这种「共享表但行级隔离」开 Authority Matrix。SSO 支持 Azure Entra ID、Okta、Google Workspace、Auth0、OneLogin、Authentik,适合已经有统一身份的团队。备份不要只打虚拟机快照:Postgres 用 pg_dump,Redis 留 RDB(自动化队列在这里),附件卷 teable-data 单独打包。官方示例:

docker exec teable-db pg_dump -U teable teable > backup.sql
docker exec teable-cache redis-cli --rdb /data/dump.rdb
docker run --rm -v teable-data:/data -v "$(pwd)":/backup alpine \
tar czf /backup/teable-data.tar.gz /data

生产请做成每日自动任务并设保留策略。管理员面板里的「私有化部署许可证」页可以复制 实例 ID,开通付费能力时用得上。

Teable 应用、Postgres 与 Redis 拓扑


五、和 NocoDB、Baserow、APITable 怎么选,以及不该用它的时候

同场竞技的开源表格并不只有 Teable。结合官方能力和社区对比(少数派、NocoBase 评测里的公开限制),可以按「数据在哪、要不要 AI、许可证能不能接受」来拆:

产品 数据底座 开源协议(社区) 更擅长 常见坑
Teable 自管 PostgreSQL AGPL-3.0 表格体验 + SQL/API + 自托管;Cloud/全功能才有 AI / App Builder 基础版没有对话和 App Builder;AGPL 传染要法务过一眼
NocoDB 连接已有 MySQL / Postgres / MariaDB / SQLite Sustainable Use License(近年变更,商用前核对) 「库已经在那儿,只要一张表皮」 不是「再建一套库」,是挂到现有库上
Baserow 自管库 MIT 协作、回收站、撤销;生态偏应用构建 看板/日历等常在付费层
APITable(维格表社区版) 自管 以仓库 LICENSE 为准 API、嵌入、插件 社区版行数/空间限制更硬,一体机镜像偏评测

选型可以记三条,而不是背功能清单:

  • 已有业务库、只想要 Airtable 皮 → 先看 NocoDB,不必把数据迁进 Teable。
  • 要表格协作,许可证要尽量松 → Baserow 的 MIT 更友好;视图是否付费单独核价。
  • 要「表格 + 自己的 Postgres + 以后接 SQL/BI」 → Teable 基础版就够;只有当你明确要自然语言建应用、AI 字段、从 Airtable 一键搬家时,才上全功能平面或 Cloud。

它解决不了的事也说清楚。Teable 不是 ERP,也不是替代 NocoBase 那种「模型驱动 + 微内核插件」的无代码开发框架——本仓库已经写过 NocoBase,那是另一条产品线。50 人以上、要多可用区和严格 SLA,Compose 单机不够,应走官方 K8s / 全功能部署仓库,而不是给应用容器加副本碰运气。AGPL-3.0 意味着:你改了服务端再对外提供网络服务,需要评估源码义务;对内自用通常宽松得多,但仍建议法务看一眼 LICENSE。完整镜像能「免费跑起来」不等于「AI 和企业功能永远免费」,以管理面板许可证状态为准。

源文微信页有验证码,评论区没抓到。社区里反复出现的实操结论倒很稳定:PUBLIC_ORIGIN 配错则附件全挂;第一个注册用户就是超管,实例暴露在公网时必须先关注册或上 SSO;计算字段别把长文本 Lookup 进一格;备份要把库、队列、附件三件套一起抓。把这四条写进上线检查表,比再看一篇「开源替代」安利有用。

官方入口:github.com/teableio/teable · help.teable.ai/zh/deploy/choose · 云端试用 teable.ai。本页 practice/ 里放了一份可直接改密码启动的 Compose 和 .env 示例,评估时复制出去用,不要提交真实密钥。

💻 配套实训环境与动手练习

本文涉及的相关技术指令、开发环境与工具链已内置在边学边练在线实验室中,无需繁琐安装配置,随时在浏览器中实践体验:

文章版权声明:除非注明,否则均为边学边练网络文章,版权归原作者所有

最新文章

热门文章

本栏目文章