从零部署Undb:基于Docker的自托管无代码数据库实践
从零部署Undb:基于Docker的自托管无代码数据库实践
1.1 Undb简介
1.2 Undb主要特点
2.1 本地环境规划
2.2 本次实践介绍
3.1 检查Docker服务状态
3.2 检查Docker版本
3.3 检查docker compose 版本
5.1 创建部署目录
5.2 编辑部署文件
5.3 创建Undb容器
5.4 查看Undb容器状态
5.5 查看Undb容器日志
6.1 访问初始页
6.2 注册账号
7.1 创建Base
7.2 创建表格
7.3 修改表格
一、Undb介绍
1.1 Undb简介
Undb是一个私有化优先、可自托管的无代码数据库与后端即服务(BaaS)解决方案,无需编码即可快速构建应用后端,支持从本地单文件到云端复杂架构的渐进式部署。
1.2 Undb主要特点
⚡ 无代码平台,操作简单直观,无需开发经验也能轻松上手。
🗄️ 基于轻量级 SQLite 数据库,无需复杂数据库配置,运行高效。
🥁 内置 Playground 模式,无需任何安装配置即可在线试用。
🔐 以私密性和本地优先为设计原则,数据完全掌控在用户手中。
📦 可使用 Bun 将应用打包为独立二进制文件,便于分发和部署。
📊 支持类似 Excel/Airtable 的公式字段,灵活处理数据逻辑。
🌐 提供 OpenAPI 标准 RESTful API,方便与前端或其他服务集成。
🪜 支持渐进式部署,从本地单文件运行平滑过渡到云端复杂架构。
🐳 支持 Docker 部署,环境隔离,便于在不同平台快速部署和扩展。
🛠️ 提供图形化界面用于表结构管理,直观操作数据库结构。
二、本次实践规划
2.1 本地环境规划
本次实践为个人测试环境,操作系统版本为 Ubuntu 24.04.2 LTS。
hostname IP地址 操作系统版本 Docker版本 部署项目 jeven01 192.168.3.88 Ubuntu 24.04.2 LTS 28.3.3 Undb
2.2 本次实践介绍
1.本次实践部署环境为个人测试环境,生产环境请谨慎; 2.在Docker环境下部署Undb自托管无代码数据库。
三、本地环境检查
3.1 检查Docker服务状态
检查Docker服务是否正常运行,确保Docker正常运行。
root@jeven:~# systemctl status docker
● docker.service - Docker Application Container Engine
Loaded: loaded (/usr/lib/systemd/system/docker.service; enabled; preset: enabled)
Active: active (running) since Mon 2025-08-04 10:10:52 UTC; 30min ago
TriggeredBy: ● docker.socket
Docs: https://docs.docker.com
Main PID: 860 (dockerd)
Tasks: 10
Memory: 97.2M (peak: 98.4M)
CPU: 606ms
CGroup: /system.slice/docker.service
3.2 检查Docker版本
检查Docker版本
root@jeven:~# docker -v
Docker version 28.3.3, build 980b856
3.3 检查docker compose 版本
检查Docker compose版本,确保2.0以上版本。
root@jeven:~# docker -v
Docker version 28.3.3, build 980b856
四、拉取Undb镜像
拉取Undb容器镜像,如下所示:
docker pull registry.cn-hangzhou.aliyuncs.com/jeson/undb
五、部署Undb服务
5.1 创建部署目录
创建部署目录
mkdir -p /data/undb && cd /data/undb
5.2 编辑部署文件
如果使用docker-cli方式部署,可参考以下命令:
docker run -d
--restart always
--name undb
-p 3721:3721
registry.cn-hangzhou.aliyuncs.com/jeson/undb:latest
在部署目录下,创建docker-compose.yaml文件,内容如下所示:
vim docker-compose.yaml
version: '3.9'
services:
jeson:
image: 'registry.cn-hangzhou.aliyuncs.com/jeson/undb:latest'
ports:
- '3721:3721'
container_name: undb
restart: always
5.3 创建Undb容器
执行以下命令,创建Undb容器。
5.4 查看Undb容器状态
检查Undb容器运行状态,确保Undb容器正常启动。
root@jeven:/data/undb# docker compose ps
WARN[0000] /data/undb/docker-compose.yaml: the attribute `version` is obsolete, it will be ignored, please remove it to avoid potential confusion
NAME IMAGE COMMAND SERVICE CREATED STATUS PORTS
undb registry.cn-hangzhou.aliyuncs.com/jeson/undb:latest "/tini -- ./undb" jeson 7 minutes ago Up 7 minutes 0.0.0.0:3721->3721/tcp, [::]:3721->3721/tcp
5.5 查看Undb容器日志
检查Undb容器运行日志,确保Undb服务正常运行。
六、访问Undb服务
6.1 访问初始页
浏览器地址:
http://<个人的服务器IP>:3721,访问Undb的初始页。如果无法访问,请确保宿主机的防火墙已关闭或已放行相关端口,对于云服务器还需配置相应的安全组规则。

6.2 注册账号
在账号注册页,自定义填写账号密码后,确认创建即可。


七、Undb基本使用
7.1 创建Base
在空间中尚无基座时,可点击“创建新基座”以开始创建数据表。

填写Base名称后,确认创建。

7.2 创建表格
点击“ Create New Table”创建表格,也可以选择导入数据表。这里我们选择导入一张XLS表格文件,如下所示:

重命名导入数据表的名称,确认导入。

点击导入后,返回主界面刷新浏览器,即可看到导入表格。

7.3 修改表格
可以直接修改字段的类型和内容,如下所示:

八、总结
通过本次实战,我们成功使用Docker部署了Undb自托管无代码数据库,体验了从环境搭建到服务部署的完整流程。Undb的强大功能和灵活配置为快速开发提供了便利,无需编写代码即可实现数据管理和应用构建。过程中,我们学习了如何检查本地环境、拉取镜像以及管理容器,掌握了Docker化部署的关键步骤。未来可以进一步探索其高级功能,如集成外部API和服务,以满足更复杂的业务需求。
作者声明本文无利益相关,欢迎值友理性交流,和谐讨论~


