Baserow 自托管完整指南:一条 Docker 命令上线你的无代码数据库
【免费下载链接】baserowBuild databases, automations, apps & agents with AI — no code. Open source platform available on cloud and self-hosted. GDPR, HIPAA, SOC 2 compliant. Best Airtable alternative.项目地址: https://gitcode.com/GitHub_Trending/ba/baserow
Baserow 是一款开源的无代码数据库平台(常被视作 Airtable 的自托管替代方案),让你在浏览器里就能建表、配自动化、搭应用,全程不写一行代码。本教程的目标很直接:10 分钟内,在你自己的机器上用 Docker 跑起一套完整可用的 Baserow,并完成第一个数据库的创建。
部署前自检:确认 Docker 环境已就绪
你只需要两样东西:Docker(19.03 及以上版本,建议保持最新)和Docker Compose。执行下面这条命令即可验证:
docker --version && docker compose version只要两条命令都能返回版本号,环境就合格了。另外提前看一眼 80 端口是否被占用(Baserow 默认通过 Caddy 反向代理对外提供 80 和 443 服务),被占用也没关系,后面会讲怎么改。
三步完成一体化部署
Baserow 官方提供了两种 Compose 方案:根目录的docker-compose.yml把后端、前端、数据库、Redis 拆成多个独立容器,适合有经验的运维;而docker-compose.all-in-one.yml把所有服务打在一个容器里,是官方推荐给大多数用户的路径。我们按后者走。
第 1 步:拿到部署文件
git clone https://gitcode.com/GitHub_Trending/ba/baserow cd baserow克隆下来的是完整源码仓库,其中根目录的docker-compose.all-in-one.yml就是我们需要的启动清单——它会拉起一个内置 PostgreSQL、Redis 和 Caddy 的baserow/baserow镜像,并挂上一个名为baserow_data的数据卷。
第 2 步:一键启动容器
docker compose -f docker-compose.all-in-one.yml up -d这条命令会拉取镜像并后台启动服务。由于容器内部集成了数据库、缓存和反代,整个部署形态如下:
启动后你会得到一个容器,所有用户数据(数据库、上传的文件)都落在baserow_data卷中,与容器生命周期解耦——升级、重建容器都不会丢数据。
第 3 步:等待首次初始化
第一次启动时,Baserow 会自动执行数据库迁移并同步内置模板,通常需要几分钟。耐心等,不要急着重启容器。
验证部署成功并完成第一次操作
如何判断部署成功?有两个明确标准:
- 运行
docker compose -f docker-compose.all-in-one.yml ps,容器状态显示为Up; - 浏览器打开
http://localhost,能看到注册/登录页面,而不是连接错误或 502。
第一次真实操作:建库建表
首次打开页面会让你注册一个账号,这将成为本实例的管理员。登录后创建一个 Workspace,新建一个 Table,然后像操作表格软件一样添加字段和行数据。熟悉表格操作的人基本零学习成本。
想换个视角看数据?在表格顶部的视图栏里切换到 Kanban 视图,同一份数据立刻变成看板:
更进一步,左侧导航里的 App builder 允许你用拖拽方式把表格、表单、仪表盘拼成自定义应用界面,这是 Baserow 区别于普通表格工具的核心能力:
进阶与排错清单:典型场景对应方案
| 典型场景 | 对应方案 |
|---|---|
| 80 端口已被占用 | 编辑docker-compose.all-in-one.yml,把ports里的80:80改成8080:80这类空闲端口,然后up -d重建;浏览器改用新端口访问 |
| 只有本机能访问,局域网其他设备打不开 | 启动时设置BASEROW_PUBLIC_URL(如http://你的服务器IP),且该值必须与浏览器地址栏输入的一致,否则会被视为"已发布应用"而受限;若本机 ufw 防火墙开启,注意 Docker 的端口发布可能绕过防火墙规则 |
| 只想本机访问,防止对外暴露 | 把端口映射写成127.0.0.1:80:80、127.0.0.1:443:443,容器将只监听回环地址 |
| 版本升级 | 官方流程:先备份数据 →docker stop旧容器 → 用新镜像版本重新启动。数据在baserow_data卷里,升级不会清空,但升级前备份仍是官方强烈建议的动作 |
| 数据备份 | 停掉 Baserow 后打包数据卷:docker run --rm -v baserow_data:/baserow/data -v $PWD:/backup ubuntu tar cvf /backup/backup.tar /baserow/data,即可得到一个可移植的完整备份 |
| 生产环境想用外部数据库 | 一体化镜像支持DATABASE_URL、REDIS_URL环境变量接入外部 PostgreSQL / Redis,官方建议生产部署这样做,便于其他系统直连数据库 |
| 需要横向扩展或多容器精细控制 | 切换到根目录docker-compose.yml:Caddy + backend + web-frontend + 多个 Celery 工作进程 + pgvector 数据库 + Redis 各自独立成容器,配置更复杂,需先按.env.example方式准备SECRET_KEY等环境变量 |
延伸阅读与下一步
- 官方文档入口:docs/index.md
- Docker 部署与升级详解:docs/installation/install-with-docker.md
- 多容器 Compose 部署:docs/installation/install-with-docker-compose.md
- 环境变量配置参考:docs/installation/configuration.md
- 后端源码:backend/src/baserow/,前端源码:web-frontend/modules/
部署只是起点。接下来可以试试给它配一条自动化工作流,或者用表单收集第一批真实数据——你离一个属于团队的在线数据库,只差这几个命令了。
【免费下载链接】baserowBuild databases, automations, apps & agents with AI — no code. Open source platform available on cloud and self-hosted. GDPR, HIPAA, SOC 2 compliant. Best Airtable alternative.项目地址: https://gitcode.com/GitHub_Trending/ba/baserow
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考