| 目录 | 用途 |
|---|---|
common/ |
Docker / K8s 共享部署素材:Doris SQL、运行时 skills 等 |
images/ |
ingest / web / demo 镜像构建(build-images.sh) |
docker/ |
Docker Compose 主栈 + demo 造数包 + 一键安装脚本(build-docker.sh) |
k8s/ |
Helm Chart + demo K8s 清单 + 一键安装脚本(build-k8s.sh) |
test/ |
应用性能接口集成测试 |
镜像与版本在 env.sh 统一配置(发版时修改 APM_VERSION);应用镜像统一 databuffhub/* 短名,通过离线包 docker load 使用。K8s 集群若需从镜像仓库拉取,由用户自行将 databuffhub/* 推到其仓库。
Demo 源码位于仓库根目录 ai-apm-demo/。
| 脚本 | 职责 |
|---|---|
images/build-images.sh |
编译 jar → 构建 databuffhub/ 镜像 → 导出 amd/arm 离线包并上传 |
images/upload-infra-images.sh |
拉取 Doris FE/BE、ZooKeeper 多架构镜像 → 导出 tar → 上传到镜像包目录 |
docker/build-docker.sh |
打 Docker 部署包 + install 脚本 → SCP 上传到 databuff-site |
docker/build-docker-offline.sh |
打 Docker 一体化离线大包(部署包 + 镜像,按架构) |
k8s/build-k8s.sh |
打 Helm / K8s 部署包 + install 脚本 → SCP 上传到 databuff-site |
k8s/download-images.sh |
按本机架构从镜像包目录下载 K8s 所需镜像并 docker load / ctr import |
k8s/download-apm-images.sh |
仅重新导入 ingest / web 镜像(运维用,非正式升级路径) |
| 内容 | 地址 | 脚本 |
|---|---|---|
离线镜像包(.tar.gz,databuffhub/* + infra) |
https://databuff.ai/databuff/<ver>/images/ 与 .../infra/images/ |
build-images.sh / upload-infra-images.sh |
| 部署包(tar.gz + install/update.sh) | https://databuff.ai/databuff/ |
build-docker.sh / build-k8s.sh |
# 0. 基础设施镜像(Doris + ZooKeeper)— 通常只做一次,或 Doris 版本升级时重做
./deploy/images/upload-infra-images.sh
# 1. 应用镜像(含 amd/arm 离线包上传)
./deploy/images/build-images.sh
# 2. Docker 部署包 → databuff-site
./deploy/docker/build-docker.sh
# 3. Docker 一体化离线大包(按架构,复用已有 infra 包)
./deploy/docker/build-docker-offline.sh
# 4. K8s 部署包 → databuff-site
./deploy/k8s/build-k8s.sh跳过上传:SKIP_PKG_UPLOAD=1 或 SKIP_IMAGE_PKG_UPLOAD=1
上传依赖 sshpass(brew install sshpass),目标目录见 env.sh 中 APM_PKG_REMOTE_DIR(默认 /opt/databuff-site/databuff,由 databuff-site nginx 映射为 APM_PKG_BASE)。
Docker / K8s 安装脚本会自动识别 amd64/arm64,从镜像包目录下载并 docker load / ctr import。
版本:默认从 ${APM_PKG_BASE}/VERSION 读取最新版;也可指定:
# 安装最新版(默认)
curl -fsSL https://databuff.ai/databuff/ai-apm-install.sh | bash
# 安装指定版本
curl -fsSL https://databuff.ai/databuff/ai-apm-install.sh | bash -s -- --version 0.1.2
APM_VERSION=0.1.2 curl -fsSL https://databuff.ai/databuff/ai-apm-install.sh | bash# Docker 全新安装(会删除旧安装目录与 data/)
curl -fsSL https://databuff.ai/databuff/ai-apm-install.sh | bash
# Docker 就地升级(保留 data/)
curl -fsSL https://databuff.ai/databuff/ai-apm-update.sh | bash
# K8s(换版本 = 卸载后重装,见 docs/运维参考/升级与卸载.md)
./download-images.sh # 部署包内
curl -fsSL https://databuff.ai/databuff/ai-apm-k8s-download-images.sh | bash
curl -fsSL https://databuff.ai/databuff/ai-apm-k8s-install.sh | bash
# Demo 造数
curl -fsSL https://databuff.ai/databuff/ai-apm-demo-install.sh | bash
curl -fsSL https://databuff.ai/databuff/ai-apm-demo-k8s-install.sh | bash详见 k8s/README.md、docker/README.md。
# 跑接口回归(默认跳过 AI;AI 请用 ./deploy/test/ai-tests.sh)
./deploy/test/run-tests.sh
# 开发态:把 AI 串进本进程(发版勿用)
TEST_SKIP_AI_ALL=0 ./deploy/test/run-tests.shexpected/*.json 为手写基线(含 $range 等柔性断言),禁止用脚本批量覆盖;需改时手工编辑对应 JSON。
初始化 SQL:deploy/common/sql/databuff.sql。