
CADBase 的用途与架构
CADBase 是一个开源平台,用于存储工程数据、进行版本管理以及在浏览器中可视化 3D 模型。它通过 API 与 CAD 系统及其他软件集成。
本指南介绍如何用一条命令启动整个技术栈(数据库、API 后端、后台处理器),并实现密钥隔离和环境专属配置。
平台基于三层实体模型构建。组件 —— 包含通用元数据的产品卡片。修改 —— 组件的具体版本(参数、设计文档)。文件集 —— 某个修改项下针对特定工具的独立文件组。
技术栈:后端 —— Rust(Actix-web、Tokio),前端 —— Rust + WASM(Yew),3D 内核 —— OCCT 与 Three.js(WebGPU/WebGL),基础设施 —— Docker Compose / Kubernetes、PostgreSQL 以及兼容 S3 的存储。
开始前的准备
- 操作系统:Linux(Ubuntu、Debian、Red OS 或其他 LTS 发行版)。
- 硬件:4 核 vCPU、8 GB 内存、30 GB 磁盘(用于构建,约 15 分钟)。
- 工具:
curl、git、docker(含docker-compose)以及openssl。 - 存储:兼容 S3(Garage、Ceph、SeaweedFS)—— 需要存储桶访问凭据。
一条命令安装
curl --proto '=https' --tlsv1.2 -sSLf https://codeberg.org/mnnxp/cdbs-installer/raw/branch/master/cdbs_start.sh | bash将会发生什么
- 环境检查:脚本会查找系统中的
git、docker、openssl和curl。如果缺少某些工具,它会提示通过您操作系统的包管理器(apt、dnf或yum)安装。 - 配置:脚本会创建
cdbs目录和包含默认值的setup.config文件,然后暂停 —— 请编辑参数(S3、端口、密码)并按Enter继续。 - 克隆与构建:与仓库同步、构建容器、准备数据库。
- SSL 证书:脚本会询问是生成自签名证书还是使用您自己的证书。若选择后者,请将
server.crt和server.key放入./ssl/目录。
如需快速本地测试,请在脚本的两次提示中均按 Enter(配置后的暂停与 SSL 选择):接受默认的 S3 占位配置并生成自签名 SSL 证书。
注意:平台启动后如需修改 S3、端口或密码,无需重新安装。更新 setup.config 后再次执行安装命令即可。
验证部署
- Web 界面:https://localhost:8080/
- GraphQL API Playground:http://localhost:3000/
企业环境
在企业 IT 基础设施中部署需要修改 setup.config。
连接外部数据库
使用安全且具备容错能力的 PostgreSQL 集群替代本地容器。访问 —— 通过 POSTGRES_USER、POSTGRES_PASSWORD 和 POSTGRES_DB。
连接企业 S3 存储
可启用 Presigned URLs —— 具有时限访问权限、不暴露 S3 密钥的签名链接。连接 —— 通过 S3_ENDPOINT、S3_REGION、S3_APPLICATION_KEY_ID、S3_APPLICATION_KEY 和 S3_BUCKET 变量。
流量加密(HTTPS/TLS)
为保护网络入口处的机密工程数据,建议部署反向代理(Nginx、Traefik),在 80/443 端口终止 SSL 证书并将流量转发到 cdbs-back 和 cdbs-app 容器。
速查表
所有命令均在 cdbs 根目录(即 docker-compose.yml 所在目录)下执行。
查看容器列表与状态:
docker compose ps所有容器(cdbs-db、cdbs-back、cdbs-proc、cdbs-app)应处于 Started 或 Healthy 状态。
重启平台
docker compose restart停止平台(保留数据)
docker compose down彻底删除技术栈(清理磁盘)
docker compose down -v警告:将连同所有数据完全删除平台 —— 包括 PostgreSQL 数据库和本地 Docker 卷。
查看日志
Web 应用:
docker compose logs -f cdbs-appAPI 服务:
docker compose logs -f cdbs-back后台处理器:
docker compose logs -f cdbs-proc数据库:
docker compose logs -f cdbs-db