Skip to content

Repository files navigation

OpenTenBase 开发环境

基于 Docker 的 OpenTenBase 开发环境,提供开箱即用的集群和完整的开发工具链。

Quick Start

如果你只想快速体验 OpenTenBase,无需编译,可直接使用以下预配置的集群:

分支说明架构
example-distributed分布式集群1 GTM + 1 CN + 2 DN
example-centralized集中式实例单节点
# 切换到示例分支
git checkout example-distributed # 分布式集群#
git checkout example-centralized # 集中式实例# 启动集群
./otb-dev.sh build
./otb-dev.sh up
# 连接数据库
./otb-dev.sh enter
psql -h 172.20.0.3 -p 11000 -U opentenbase postgres

开发环境(当前分支)

从源码编译 OpenTenBase:

# 构建并启动(预配置模式)
./otb-dev.sh up
# 进入容器
./otb-dev.sh enter
# 容器内直接编译
make -j$(nproc)
make install

使用模式

1. 预配置模式(默认)

在 Docker build 阶段自动执行 configure,可直接尝试编译:

./otb-dev.sh up
./otb-dev.sh enter
make -j$(nproc)
make install

2. 基础模式

不执行 configure,可完整体验手动编译流程:

./otb-dev.sh up base
./otb-dev.sh enter
./configure --prefix=$INSTALL_PATH/opentenbase_bin_v5.0 \
--enable-user-switch \
--with-libxml \
--disable-license \
--with-openssl \
--with-ossp-uuid \
CFLAGS="-g"
make -j$(nproc)
make install

离线安装支持

本项目提供 Docker 离线安装包下载工具,支持在无网络环境下部署 Docker。`

  1. docker-offline-packages 目录拷贝到目标机器

  2. 在离线机器上安装:

    # Debian/Ubuntucd docker-offline-packages
    sudo ./install-deb.sh ./ubuntu-22.04
    # CentOS/RHEL
    sudo ./install-rpm.sh ./centos-7
    # 启动 Docker
    sudo systemctl start docker
    sudo systemctl enable docker

常用命令

命令说明
./otb-dev.sh up启动容器(预配置模式)
./otb-dev.sh up base启动容器(基础模式)
./otb-dev.sh enter进入容器
./otb-dev.sh build构建镜像
./otb-dev.sh down停止并删除容器
./otb-dev.sh status查看状态
./otb-dev.sh export导出镜像

环境变量

变量
SOURCECODE_PATH/data/opentenbase/OpenTenBase
INSTALL_PATH/data/opentenbase/install
PG_HOME/data/opentenbase/install/opentenbase_bin_v5.0

镜像导出/导入

# 导出镜像
./otb-dev.sh export# 使用 zstd 格式(更快)
./otb-dev.sh export-zstd
# 导入镜像
./otb-dev.sh import

故障排除

# 清理缓存后重建
docker system prune -f
./otb-dev.sh rebuild
# 查看容器日志
./otb-dev.sh logs

About

Docker-based development environment for OpenTenBase

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages