【Docker项目实战】使用Docker部署Undb自托管无代码数据库
一、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容器。
docker compose up -d
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服务正常运行。
docker compose logs
六、访问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和服务,以满足更复杂的业务需求。
- 点赞
- 收藏
- 关注作者
评论(0)