Budibase 开发环境在平台更新后出现不兼容问题时如何重置恢复
【免费下载链接】budibaseAI agents, automations and apps that run your operations. Model agnostic.项目地址: https://gitcode.com/GitHub_Trending/bu/budibase
如果你在本地开发 Budibase(AI agents、automations 和 apps 的低代码平台),平台的一次更新之后开发环境开始无法正常工作,项目文档把这归因于incompatible updates on the Budibase platform。文档给出的恢复方法是:先彻底清掉开发环境,再按照安装构建流程重新创建一份全新的 Budibase 安装。
适用前提(均来自 CONTRIBUTING.md):
- 已安装 Docker 与 Docker Compose(本地开发时 Redis、CouchDB、MinIO、NGINX 都跑在 docker compose 里);
- NodeJS 版本
22.x.x、Python3.x,yarn 可用; - 已 clone 仓库并进入本地副本;Windows 上所有 yarn 命令必须放在 bash shell(如 git bash)中执行。
清理环境:yarn nuke:docker
重置的第一步对应文档 Setup 章节的Step 6. Cleanup,在仓库根目录执行:
yarn nuke:docker这条命令会清掉所有 Budibase 开发服务(文档原文:"will wipe all the Budibase services")。从脚本定义看,它实际执行lerna run --stream dev:stack:nuke,最终由 manage.js 对 docker-compose.dev.yaml 执行docker-compose down -v --remove-orphans,即停止并删除容器,同时删除 docker volumes。
执行前必须知道:volume 删除后本地数据不可恢复。文档列出的本地数据卷及内容:
| 卷 | 存放的数据 |
|---|---|
redis_data | Sessions, email tokens |
couchdb3_data | Global and app databases |
minio_data | App manifest, Budibase client, static assets |
也就是说,开发期间创建的所有 app、表数据和会话都会被一并清掉——这正是重置想要的效果,但如果你的环境里还有需要保留的东西,先自行处理再执行。
重建:回到 Install and Build 步骤
文档的 Troubleshooting 一节明确给出恢复路径:先按 Step 6 Cleanup 清空环境,然后回到 Setup 指南的 Step 3. Install and Build,重新创建一份全新的 Budibase 安装。Step 3 有两条路径:
快速方式:
yarn setupyarn setup会检查所有必要组件是否安装并配置好仓库供使用。注意它末尾会接着执行yarn dev(见 package.json 中该脚本的定义:git submodule update、node ./hosting/scripts/setup.js、yarn、yarn build、yarn dev),即一步到位把服务也拉起来。
手动方式(假设 Docker/Docker Compose 已装好),依次执行:
yarn安装项目依赖。
yarn build构建所有 Budibase 包。
如果你能访问@budibase/pro子模块,文档要求在运行以上命令前先按该指南的 Pro 章节处理,否则可跳过。
启动并验证恢复
服务与包就绪后,按文档的 Running 步骤启动开发模式:
- 打开一个新终端;
- 在仓库根目录执行:
yarn dev- 在浏览器访问 builder:
http://localhost:10000/builder能打开 builder 页面,说明开发环境已按全新安装恢复。yarn dev会同时开启 builder app、server、client library 以及组件库的 watch 模式(live reloading)。另外,yarn dev启动时会先执行kill-all释放 3000、4001/4002(以及账号门户的 3001/4003)端口上的旧进程,所以如果之前有残留的 builder/server 进程占用端口,无需手动清理。
限制与边界
- 文档对"不兼容"的描述只有一句话,没有列出具体报错形态;判断是否需要走这套重置流程,依据是环境在平台更新后整体无法正常工作,而不是某条具体的错误日志。
nuke:docker只清 Docker 侧的服务与卷;yarn nuke还会额外执行nuke:packages(重新 clean + 安装 + 构建包)。如果重置后仍有依赖层面的异常,可以改用yarn nuke,但它会先删掉各包产物与顶层 node_modules 再重建,耗时更长。- 文档提示:在 self hosted / cloud / cloud & account 等不同开发模式之间切换时,需要清理浏览器 cookies;这与重置环境是两件事,但如果你在验证恢复时遇到登录状态异常,先做这一步。
重置完成后,开发环境等价于一份全新的本地安装,后续可以按文档的 Development Modes 一节用yarn mode:self、yarn mode:cloud等命令选择运行模式。
【免费下载链接】budibaseAI agents, automations and apps that run your operations. Model agnostic.项目地址: https://gitcode.com/GitHub_Trending/bu/budibase
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考