Doris部署学习(一)
目录
前言
一、Docker容器支持
二、Doris编译步骤
1.拉取镜像
2.构建Docker编译容器
3.下载源码并编译
前言
本文档主要介绍如何通过源码在Docker编译 Doris,以及部署。
一、Docker容器支持
Docker教程:Docker & Docker-Compose 安装教程 - 知乎。
二、Doris编译步骤
1.拉取镜像
拉取指定版本的docker compose image
docker pull apache/doris:build-env-for-2.0
2.构建Docker编译容器
代码如下:
1.java下载文件 宿主机root下的.m2 对应容器的 /root/.m2
2.宿主机文件/opt/apache-doris 对应容器同目录
3.容器名 doris-compose
docker run -it --name doris-compose -v /root/.m2:/root/.m2 -v /opt/apache-doris:/opt/apache-doris apache/doris:build-env-for-2.0
4.执行完毕后 docker ps查看镜像

3.下载源码并编译
1.进入容器
docker exec -it doris-compose bash
2.启动镜像后,你应该已经处于容器内,进入/opt/apache-doris 可以通过以下命令下载 Doris 源码(已挂载本地源码目录则不用),拉取并进入容器源码目录doris
git clone https://github.com/apache/doris.git && cd ./doris
3.切换tag分支 选择对应2.0的tag分支进行切换,这里选用 2.0.4-rc06
git fetch origin --tags && git checkout 2.0.4-rc06

4.编译 Doris
先通过以下命令查看编译机器是否支持avx2指令集,有返回下图所示证明支持
cat /proc/cpuinfo | grep avx2

注意:
如果你是第一次使用 build-env-for-0.15.0 或之后的版本,第一次编译的时候要使用如下命令:
原因:这是因为 build-env-for-0.15.0 版本镜像升级了 thrift(0.9 -> 0.13),需要通过 --clean 命令强制使用新版本的 thrift 生成代码文件,否则会出现不兼容的代码。编译会下载大量jar,建议更换maven镜像,whereis maven 查询maven目录,进入maven目录修改setting文件,加上阿里云镜像。
sh build.sh --clean --be --fe
或者指定多少核心来编译,我是八核,选择7核心来编译
sh build.sh -j7 --clean --be --fe
如果支持avx2,可不加 USE_AVX2=0 ,直接进行编译
sh build.sh
不支持则使用以下命令进行编译
USE_AVX2=0 sh build.sh
如需编译Debug版本的BE,增加 BUILD_TYPE=Debug
BUILD_TYPE=Debug sh build.sh
编译成功后

注:以上是手动编译打包学习。以下是使用官方工具进行集群部署。
三、Manager 部署
参考文档,SlectDB文档 SelectDB Enterprise 介绍 | SelectDB
安装文件下载地址 SelectDB Enterprise下载-SelectDB
下载一
下载二
部署教程 -- 【10. Manager 部署】 Manager
1FE节点 3从BE节点 本地测试环境,4台 8核16g linux centos7

相关文章:
Doris部署学习(一)
目录 前言 一、Docker容器支持 二、Doris编译步骤 1.拉取镜像 2.构建Docker编译容器 3.下载源码并编译 前言 本文档主要介绍如何通过源码在Docker编译 Doris,以及部署。 一、Docker容器支持 Docker教程:Docker & Docker-Compose 安装教程 - 知…...
QT下跨平台库实现及移植经验分享
最近在移植公司一个QT桌面软件到android上,有一些公司自定义的库,用了很多windows的api,移植过程很是曲折,在此有一些感悟分享一下~ 一.自编写跨平台库 1.有时候为了程序给第三方用需要编译一些qt封装库,并可能跨平台…...
8:00面试,8:06就出来了,问的问题有点变态。。。
从小厂出来,没想到在另一家公司又寄了。 到这家公司开始上班,加班是每天必不可少的,看在钱给的比较多的份上,就不太计较了。没想到9月一纸通知,所有人不准加班,加班费不仅没有了,薪资还要降40%…...
Rust 利用 Trait 实现多态性
在Rust中,Trait(特性)是一种强大的抽象机制,类似于其他编程语言中的接口或类型类。它们允许你定义一组方法,这些方法可以在任何实现该Trait的类型上调用。这使得Rust能够以一种非常灵活的方式支持多态性。 下面是一个…...
Java毕业设计-基于springboot开发的“智慧食堂”设计与实现-毕业论文+答辩PPT(附源代码+演示视频)
文章目录 前言一、毕设成果演示(源代码在文末)二、毕设摘要展示1.开发说明2.需求分析3、系统功能结构 三、系统实现展示1、系统登录2、系统功能模块3、管理员功能模块 四、毕设内容和源代码获取总结 Java毕业设计-基于springboot开发的“智慧食堂”设计与…...
一瓶5.86万,听花酒什么来头?
听花酒,到底什么来头? 宣称有提升免疫力、改善睡眠、保障男性功能、调节生理紊乱、抗衰老等功效的听花酒,被315晚会曝光了。 相关话题词随即冲上了热搜。之后,售价最高达58600元的听花酒被京东、拼多多、淘宝等电商平台火速下架…...
代码随想录 二叉树—填充每个节点的下一个右侧结点指针
今天没精力看了 题解c: class Solution { public:Node* connect(Node* root) {if (root NULL) return NULL; // 基本情况queue<Node*> q;q.push(root);while (!q.empty()) {int size q.size();Node* prev NULL;for (int i 0; i < size; i) {Node* no…...
用 bsdtar 做 Linux 全系统迁移 - 最省空间、最灵活的Linux系统迁移方式,但需要那么一点点技巧
(首发地址:学习日记 https://www.learndiary.com/2024/03/migrate-linux-with-bsdtar/ ) 我们在做 Linux 全系统迁移的时候,可以直接备份磁盘或分区(如 dd ),也可以备份全部文件(如…...
【模拟string函数的实现】
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 目录 前言 模拟string函数的实现 浅拷贝 深拷贝 vs和g下string结构的说明 总结 前言 模拟string函数的实现 浅拷贝 深拷贝 总结 前言 世上有两种耀眼的光芒&#…...
智能合约开发基础知识:最小信任机制、智能合约、EVM
苏泽 大家好 这里是苏泽 一个钟爱区块链技术的后端开发者 本篇专栏 ←持续记录本人自学两年走过无数弯路的智能合约学习笔记和经验总结 如果喜欢拜托三连支持~ 专栏的前面几篇详细了介绍了区块链的核心基础知识 有兴趣学习的小伙伴可以看看http://t.csdnimg.cn/fCD5E关于区块…...
程序人生——Java泛型和反射的使用建议
目录 引出泛型和反射建议93:Java的泛型是类型擦除的建议94:不能初始化泛型参数和数组建议95:强制声明泛型的实际类型 建议96:不同的场景使用不同的泛型通配符建议97:警惕泛型是不能协变和逆变的 建议98:建议…...
JavaSE-----认识异常【详解】
目录 一.异常的概念与体系结构: 1.1异常的概念: 1.2一些常见的异常: 1.3异常的体系结构: 1.4异常的分类: 二.异常的处理机制: 2.1 抛出异常: 2.2异常的捕获: 2.3try-catch-&…...
【机器学习300问】34、决策树对于数值型特征如果确定阈值?
还是用之前的猫狗二分类任务举例(这个例子出现在【机器学习300问】第33问中),我们新增一个数值型特征(体重),下表是数据集的详情。如果想了解更多决策树的知识可以看看我之前的两篇文章: 【机器…...
计算机二级(Python)真题讲解每日一题:《绘制雪花》
在横线处填写代码,完成如下功能…...
Rust 的 Arc<Mutex<T>> 的用法示例源代码
在 Rust 中,Arc<Mutex<T>> 是一种组合类型,它结合了 Arc(原子引用计数)和 Mutex(互斥锁)。Arc 用于在多个所有者之间共享数据,而 Mutex 用于确保在任意时刻只有一个线程可以访问被保…...
【NR 定位】3GPP NR Positioning 5G定位标准解读(十六)-UL-AoA 定位
前言 3GPP NR Positioning 5G定位标准:3GPP TS 38.305 V18 3GPP 标准网址:Directory Listing /ftp/ 【NR 定位】3GPP NR Positioning 5G定位标准解读(一)-CSDN博客 【NR 定位】3GPP NR Positioning 5G定位标准解读(…...
如何理解闭包
闭包是编程语言中一个重要的概念,特别是在函数式编程中常常会遇到。以下是对闭包的理解: 1. 定义: 闭包是一种函数,它引用了在其定义范围之外的自由变量(非全局变量),并且这些引用的变量在函数被调用时仍然保持活跃状态。2. 构成: 闭包通常由两部分组成:内部函数(函…...
python知识点总结(一)
这里写目录标题 一、什么是WSGI,uwsgi,uWSGI1、WSGI2、uWSGI3、uwsgi 二、python中为什么没有函数重载?三、Python中如何跨模块共享全局变量?四、内存泄露是什么?如何避免?五、谈谈lambda函数作用?六、写一个函数实现字符串反转,尽可能写出你知道的所…...
【Poi-tl Documentation】区块对标签显示隐藏改造
前置说明: <dependency><groupId>com.deepoove</groupId><artifactId>poi-tl</artifactId><version>1.12.1</version> </dependency>模板: 删除行表格测试.docx 改造前测试效果 package run.siyuan…...
第十四届蓝桥杯 三国游戏
一开始的思路就是想着暴力,但是呢,如果真的用暴力一个一个列的话,连30%的数据都搞定不了,所以这里需要考虑别的办法。 这道题的思路就是贪心。 我们这样想:既然要满足至少一个国X>YZ,那么我们何不变成…...
广州创科助力南水水电站安全监测自动化升级
南水水电站位于广东韶关乳源,其大坝建于1958年,是目前世界上唯一仍在运行的定向爆破粘土斜墙堆石坝,曾获1978年全国科学大会科技成果奖,在我国水利建设史上具有里程碑意义。电站总库容12.84亿立方米,为韶关约130万人口…...
NXOpen 属性工具(工作部件和实体加属性二合为一)
C++ //HPP文件 //============================================================================== #ifndef ATTRIBUTE_TEST_H_INCLUDED #define ATTRIBUTE_TEST_H_INCLUDED //------------------------------------------------------------------------------ //These i…...
OpenClaw+千问3.5-9B:个人知识库的自动构建与更新
OpenClaw千问3.5-9B:个人知识库的自动构建与更新 1. 为什么需要自动化知识管理 作为一个长期与技术文档打交道的开发者,我发现自己面临一个典型困境:每天接触大量有价值的信息——技术博客、论文片段、代码示例、会议记录——但它们最终都散…...
机器学习04——numpy
1、numpy介绍Numpy(Numerical Python)是一个开源的Python科学计算库,用于快速处理任意维度的数组。Numpy支持常见的数组和矩阵操作。对于同样的数值计算任务,使用Numpy比直接使用Python要简洁的多。Numpy使用ndarray对象来处理多维…...
OpenClaw+千问3.5-27B创作助手:从大纲到公众号图文全自动生成
OpenClaw千问3.5-27B创作助手:从大纲到公众号图文全自动生成 1. 为什么需要全自动创作助手 作为一个技术博主,我每周都要产出2-3篇技术文章。最痛苦的环节不是写作本身,而是那些重复性的准备工作:构思大纲、寻找配图、调整格式、…...
告别第三方平台!手把手教你用photo-sphere-viewer在小程序H5里嵌入VR全景图
告别第三方平台!手把手教你用photo-sphere-viewer在小程序H5里嵌入VR全景图 在数字化营销日益重要的今天,VR全景展示已经成为房地产、家居、旅游等行业提升用户体验的标配功能。传统做法是依赖第三方VR云服务平台,但这往往意味着高昂的费用、…...
从噪声数据中提取系统矩阵(对应论文式3)
控制顶刊IEEE TAC热点论文复现,前V章案例复现,内容包括数据驱动状态反馈控制和LQR控制,可应用于具有噪声的数据和非线性系统,附参考论文及详细代码注释对应到文中公式,易于掌握理解,需要代码最近在复现TAC上…...
glm-5-free不输付费版!DMXAPIAI模型聚合平台,如何调用免费大模型API?
中关村论坛发布AutoGLM 沉思智能体,具备深度研究与电脑操作双重能力,GLM-5.1 编程能力与全球顶尖模型 Claude Opus 4.6 差距仅2.6 分,整体呈现技术迭代、商业化与资本市场的全面提速态势。智谱AI正式推出GLM-5-free开源模型,凭借与…...
基于STM32与华为云的粮仓环境监测系统设计
1. 项目概述粮仓环境监测系统是现代农业管理中不可或缺的重要环节。作为一名长期从事农业物联网开发的工程师,我深知传统人工巡检方式存在的诸多痛点:效率低下、数据记录不完整、响应不及时等问题常常导致粮食储存过程中出现不必要的损失。这套基于华为云…...
DuinoMemory:面向Arduino的轻量级嵌入式智能指针库
1. 项目概述DuinoMemory 是一款专为 Arduino 及资源受限嵌入式系统设计的轻量级智能指针库。它不依赖 STL、不使用异常(exceptions)、不启用 RTTI,完全以头文件形式提供(header-only),所有实现均通过 C 模板…...
