budibase快速搭建一个数据应用
sudo docker run -d -t \
--name=budibase \
-p 10000:80 \
-v /data/exchange/budibase:/data \
--restart unless-stopped \
budibase/budibase:latest
配置 agents
Barcode/QR Scanner 二维码组件
budibase
功能模块
1.workspaces
Apps: Each workspace can contain multiple apps
2.Home 主目录有三个
代理助手 agents
自动流程 automations 用于Cron jobs and Webhooks integrations.
应用 apps
3.Data tables
01.END Users /Custome roles
01.Add new data source : 增加源数据有3种
01.创建新表/使用样例数据
02.上传csv或者json
03.连接外部数据源: mysql Postgresql googlesheet 以及S3等
04.REST data source click: API's > Add new API > Custom REST AP
模式-开发模式和生产模式
Dev (development) and Prod (production)
4. Invite users
用户管理: organisation admin 组织管理者
creator 创建者
end user 终端用户(有两种 Basic user 和 Admin user )
5.Connections 和API explorer
6.setting 设置
app: Embed a Budibase app as an iframe within your own webpages.
7.用户设置--左下角
developer mode 开发者模式 更新密码 设置个人信息
查看API key 以及退出
8.publish
右上角
Preview and Publish 预览和发布
基本概念
1.home 种概念
switch on /switch off
status: draft 和live
live 常指“已上线、可运行的状态”,与 draft(草稿/未发布状态)相对
2.Data tables
数据类型 Data
view-视图 : Views are virtual tables
3.构建数据应用
Bindings 绑定
Actions
Conditions
界面:两个核心概念 Screens 和 Components
01.Screens
1. 屏幕命名为** ,并将 URL 设置为/。单击Continue后,会生成一个空白屏幕
可以向这个屏幕添加组件、更改导航、更新屏幕的访问权限。
02.Components: 常见的组件
两大类:基础的单个组件和由多个组件预构而成的区块 (Blocks)
单个组件:
Layout 布局类 layout Container modal Accordion 模态框 (Modal) 和折叠面板 (Accordion)
DATA: 数据展示: Table Data Provider Table Filter
Basic 按钮导航类: button NavBar Link
Form 表单类: Form Form step/Form Group/Text Field /Number Field/checkbox
chart: 图标类: Bar chart ,line chart
AI chat: AI 类型
BLOCKS 区块
Card Block/ Repeater Block/ Form Block /Chart block/Multi-step Form Block
更精细的控制或区块无法满足的定制化需求,还可以选择“弹出” (Eject) 区块,将其拆解为独立的组件进行手动调整 。
使用说明
Data management
进一步拓展
Budibase API provides access to resources including applications, users, tables and data through a RESTful API
https://budibase.app/api/public/v1/workspaces
https://budibase.app/api/public/v1/tables
https://budibase.app/api/public/v1/tables/{tableId}/rows
https://budibase.app/api/public/v1/views
https://budibase.app/api/public/v1/queries/{queryId}
https://budibase.app/api/public/v1/metrics
https://budibase.app/api/public/v1/users
https://budibase.app/api/public/v1/roles/assign
框架和结构
功能模块
App service - Worker service -Database (CouchDB)-Object store (MinIO)-Proxy (NGINX) -Cache (Redis)
Budibase Worker
- a background service engine that can handle tasks in the background of the main app servers.
Budibase Server
- the main face of the Budibase platform, providing the APIs which your apps will make
CouchDB
- this is our database service, making use of a docker volume to persist data.
Minio
- an open-source alternative to S3, acting as an object store for files, binary data, attachments and so on.
Nginx
- our proxy engine, this provides a single interface by which all services can be communicated with as required.
NocoBase
先定义数据源和数据结构,再用区块展示数据,最后用操作处理数据——界面与数据彻底解耦
01.外部数据源-要提前创建文件目录和文件
02.fdw
MySQL 数据库默认没有开启 federated 模块,需要修改 my.cnf 配置
docker exec -it mysql_container mysql -u nocobase -p nocobase
docker inspect --format='{{json .State.Health}}' <container_id> is used to
retrieve the detailed health check log and status information for a specific Docker
NocoBase
To include the FEDERATED storage engine if you build MySQL from source, invoke
编译的 CMake with the -DWITH_FEDERATED_STORAGE_ENGINE option.
The FEDERATED storage engine is not enabled by default in the running server; to enable FEDERATED,
配置的 you must start the MySQL server binary using the --federated option.
To examine the source for the FEDERATED engine, look in the storage/federated directory of a MySQL source distribution
Support = YES:说明 FEDERATED 引擎已编译且处于开启状态。
Support = NO:说明该引擎已编译进二进制文件,但默认未开启(通常需要在 my.cnf 或 my.ini 配置文件中添加 federated 选项并重启 MySQL)。
不显示: 如果列表中完全没有 FEDERATED,说明 MySQL 版本在编译时未包含该引擎,通常需要重新编译 MySQL
主配置
/etc/my.cnf
在主配置中添加 !includedir /etc/mysql/conf.d/ 以加载额外配置
show engines ;
FEDERATED行状态为 NO
echo '[mysqld]' > federated.cnf
echo 'federated' >> federated.cnf
federated
MySQL 如何启用 federated 引擎
- ./storage/mysql-conf:/etc/mysql/conf.d
要提前创建文件目录和文件
商业授权的方式
新的授权方式取代了以往在配置文件中填写用户名和密码的旧方法,
引入了“实例 ID (Instance ID)”和“授权密钥 (License-key)”的机制。
参考
Docker 安装 https://docs.nocobase.com/cn/get-started/installation/docker
MySQL 如何启用 federated 引擎 https://docs.nocobase.com/cn/data-sources/collection-fdw/enable-federated
https://docs.budibase.com/reference/appcreate
https://docs.budibase.com/docs/introduction-to-bindings
https://docs.budibase.com/docs/docker