Docker 部署可视化数据库工具 undb
🌟 什么是 undb?
undb 是一款开源的、私有化优先的无代码数据库平台(No-Code Platform),常被视为 Airtable 的开源自托管替代方案。它不仅是一个美观的表格工具,还具备 BaaS(后端即服务) 的能力。
为什么选择 undb?
-
私有化部署:数据完全掌握在自己手中,非常适合对隐私敏感的项目。
-
现代技术栈:基于 Bun、Svelte 和 SQLite 构建,运行速度极快且资源占用极低。
-
开发者友好:支持自动生成 类型安全(Type-safe)的 API,你可以把它当作一个带 UI 界面的快速后台管理系统。
-
多维度视图:提供表格(Grid)、看板(Kanban)、日历(Calendar)等多种数据展现形式。
🛠️ 部署步骤
1. 准备宿主机目录与文件
首先,在宿主机上创建存放数据的目录,并生成一个空的数据库文件。
# 创建自定义数据目录(例如 /opt/undb/data)
sudo mkdir -p /opt/undb/data
# 手动创建一个空的 sqlite 文件
sudo touch /opt/undb/data/undb.sqlite
# 关键步骤:赋予权限,确保 Docker 容器内的 node 用户有权读写
# 1000 通常是 node 镜像默认用户的 UID
sudo chown 1000:1000 /opt/undb/data/undb.sqlite
2. 使用 Docker Compose 部署
创建 docker-compose.yml 文件。这种方式最优雅,不需要进入容器手动执行 ln 命令。
3. 启动容器
在 docker-compose.yml 所在目录运行:
💡 小贴士
对于个人开发者或小团队来说,使用 Docker 部署 undb 是最快捷的方式。但默认情况下,它的数据库文件存储在容器内部,如果不进行特殊配置,容器一旦删除,你的数据也将烟消云散。
在使用 Docker 部署 undb 时,默认的数据库文件 undb.sqlite 通常位于容器内的 /usr/src/app 目录下。为了保证数据安全且易于备份,我们需要将其持久化到宿主机的自定义位置。
-
备份:你现在只需要定期备份
/opt/undb/data/undb.sqlite这一个文件即可。 -
附件存储:如果你还需要自定义图片等附件的存储位置,可以关注环境变量
UNDB_STORAGE_LOCAL_PATH并在volumes中挂载对应的目录。
发表评论