docker部署单机版doris

文章目录

  • 前言
  • 一、系统环境简介
  • 二、部署要求
  • 三、部署安装
    • 1、基础设置
    • 2、下载镜像
    • 3、下载安装包
    • 4、启动镜像环境
    • 5、配置fe
    • 6、配置be
  • 总结


前言

应项目测试需求,需使用docker部署单机版doris。

一、系统环境简介

#1 系统信息
[root@test][~]
$cat /etc/redhat-release 
CentOS Linux release 7.7.1908 (Core)[root@test][~]
$uname -a
Linux test 3.10.0-1062.el7.x86_64 #1 SMP Wed Aug 7 18:08:02 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux#2 docker版本信息
[root@test][~]
$docker version
Client: Docker Engine - CommunityVersion:           23.0.1API version:       1.42Go version:        go1.19.5Git commit:        a5ee5b1Built:             Thu Feb  9 19:51:00 2023OS/Arch:           linux/amd64Context:           defaultServer: Docker Engine - CommunityEngine:Version:          23.0.1API version:      1.42 (minimum version 1.12)Go version:       go1.19.5Git commit:       bc3805aBuilt:            Thu Feb  9 19:48:42 2023OS/Arch:          linux/amd64Experimental:     falsecontainerd:Version:          1.6.18GitCommit:        2456e983eb9e37e47538f59ea18f2043c9a73640runc:Version:          1.1.4GitCommit:        v1.1.4-0-g5fd4c4ddocker-init:Version:          0.19.0GitCommit:        de40ad0

二、部署要求

在这里插入图片描述

三、部署安装

1、基础设置

在启动doris的be时,需要将 Linux 操作系统的内核参数设置为2000000,这里是Doris官方要求的,Linux系统修改内核参数,直接在Docker宿主机中设置即可。

[root@test][~]
$sysctl -w vm.max_map_count=2000000
vm.max_map_count = 2000000[root@test][~]
$sysctl vm.max_map_count
vm.max_map_count = 2000000

2、下载镜像

这个镜像主要是用来集成FE(Doris的前端UI)和BE(Doris的后台进程)的,里面包含一些常用的开发环境,例如JDK等

[root@test][~/doris]
$ docker pull apache/doris:build-env-ldb-toolchain-latest

3、下载安装包

#1 官方下载地址
https://doris.apache.org/zh-CN/download/
#2 本次下载如下版本

在这里插入图片描述`

#3 # mysql连接客户端 这里需要引入MySQL是因为了支持 Doris 的元数据存储和管理
wget https://doris-build-hk.oss-cn-hongkong.aliyuncs.com/mysql-client/mysql-5.7.22-linux-glibc2.12-x86_64.tar.gz#4 下载的两个软件截图如下:
[root@test][~/doris]
$ ll
drwxr-xr-x 5 root root        44 Dec 10  2023 apache-doris-2.0.3-bin-x64.tar.gz 
-rw-r--r-- 1 root root 643790848 Nov 26 10:15 mysql-5.7.22-linux-glibc2.12-x86_64.tar.gz

4、启动镜像环境

#1 启动镜像
docker run -d -it --name=doris \
-p 9030:9030 -p 8030:8030 \
apache/doris:build-env-ldb-toolchain-latest \
/bin/bash#2 复制安装包到doris容器中
docker cp /root/doris/apache-doris-2.0.3-bin-x64.tar.gz doris:/opt
docker cp /root/doris/mysql-5.7.22-linux-glibc2.12-x86_64.tar.gz doris:/opt#3 进入到容器中
[root@test][~/doris]
$docker ps
CONTAINER ID   IMAGE                                         COMMAND       CREATED         STATUS         PORTS                                                                                  NAMES
a7c07b27e56a   apache/doris:build-env-ldb-toolchain-latest   "/bin/bash"   4 minutes ago   Up 4 minutes   0.0.0.0:8030->8030/tcp, :::8030->8030/tcp, 0.0.0.0:9030->9030/tcp, :::9030->9030/tcp   doris
[root@test][~/doris]
$docker exec -it doris bash
[root@a7c07b27e56a ~]# cd /opt/
[root@a7c07b27e56a opt]# ls
apache-doris-2.0.3-bin-x64.tar.gz  mysql-5.7.22-linux-glibc2.12-x86_64.tar.gz
[root@a7c07b27e56a opt]# tar -zxvf apache-doris-2.0.3-bin-x64.tar.gz
[root@a7c07b27e56a opt]# tar -zxvf mysql-5.7.22-linux-glibc2.12-x86_64.tar.gz
[root@a7c07b27e56a opt]# ls
apache-doris-2.0.3-bin-x64  apache-doris-2.0.3-bin-x64.tar.gz  mysql-5.7.22-linux-glibc2.12-x86_64  mysql-5.7.22-linux-glibc2.12-x86_64.tar.gz
# 查看主机iP,后面会用到
[root@a7c07b27e56a opt]# hostname -i
172.17.0.2

5、配置fe

#1 进入到指定目录
[root@a7c07b27e56a apache-doris-2.0.3-bin-x64]# cd /opt/apache-doris-2.0.3-bin-x64/fe
[root@a7c07b27e56a fe]# ll
total 132
-rw-r--r-- 1 root root 84903 Dec 10  2023 LICENSE-dist.txt
-rw-r--r-- 1 root root  1948 Dec 10  2023 NOTICE.txt
drwxr-xr-x 2 root root    43 Dec 10  2023 bin
drwxr-xr-x 3 root root    49 Dec 10  2023 conf
drwxr-xr-x 2 root root     6 Dec 10  2023 doris-meta
drwxr-xr-x 2 root root 24576 Dec 10  2023 lib
drwxr-xr-x 2 root root  4096 Dec 10  2023 licenses
drwxr-xr-x 2 root root     6 Dec 10  2023 log
drwxr-xr-x 3 root root   105 Dec 10  2023 mysql_ssl_default_certificate
drwxr-xr-x 2 root root    62 Dec 10  2023 spark-dpp
drwxr-xr-x 3 root root    20 Dec 10  2023 webroot#2 编辑配置文件
[root@a7c07b27e56a fe]# vim conf/fe.conf# Default value is empty.
# priority_networks = 10.10.10.0/24;192.168.0.0/16
# 修改成如下的
priority_networks = 172.17.0.2/24#3 启动fe
[root@a7c07b27e56a fe]# ll bin/
total 12
-rwxr-xr-x 1 root root 7538 Dec 10  2023 start_fe.sh
-rwxr-xr-x 1 root root 2604 Dec 10  2023 stop_fe.sh
[root@a7c07b27e56a fe]# ./bin/start_fe.sh --daemon
[root@a7c07b27e56a fe]# jps
546 Jps
532 DorisFE#4 后台验证,
[root@a7c07b27e56a fe]# curl http://127.0.0.1:8030/api/bootstrap
{"msg":"success","code":0,"data":{"replayedJournalId":0,"queryPort":0,"rpcPort":0,"version":""},"count":0}[root@a7c07b27e56a fe]##5 页面验证

在这里插入图片描述

账户root,密码为空
在这里插入图片描述

#6 容器内链接fe,默认无密码
[root@a7c07b27e56a fe]# /opt/mysql-5.7.22-linux-glibc2.12-x86_64/bin/mysql -uroot -P9030 -h127.0.0.1 --skip-ssl
WARNING: --ssl is deprecated and will be removed in a future version. Use --ssl-mode instead.
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 0
Server version: 5.7.99 Doris version doris-2.0.3-rc06-37d31a5Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved.Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.mysql> show frontends\G;
*************************** 1. row ***************************Name: fe_499e3b0b_c794_4aed_8658_751e08363ce7Host: 172.17.0.2EditLogPort: 9010HttpPort: 8030QueryPort: 9030RpcPort: 9020Role: FOLLOWERIsMaster: true      #这里为true代表正常ClusterId: 2136993076Join: true      #这里为true代表正常Alive: true      #这里为true代表正常
ReplayedJournalId: 816LastHeartbeat: 2024-11-26 03:30:03IsHelper: trueErrMsg: Version: doris-2.0.3-rc06-37d31a5CurrentConnected: Yes
1 row in set (0.08 sec)ERROR: 
No query specifiedmysql> exit
Bye

6、配置be

#1 进入到指定目录
[root@a7c07b27e56a fe]# cd /opt/apache-doris-2.0.3-bin-x64/be#2 编辑配置文件
[root@a7c07b27e56a be]# vim conf/be.conf
# use CIDR format, e.g. 10.10.10.0/24 or IP format, e.g. 10.10.10.1
# Default value is empty.
# priority_networks = 10.10.10.0/24;192.168.0.0/16
# 添加下面这行
priority_networks = 172.17.0.2/24#3 设置jdk路径
[root@a7c07b27e56a be]# echo $JAVA_HOME
/usr/lib/jvm/java-1.8.0
[root@a7c07b27e56a be]# vim bin/start_be.sh# KIND, either express or implied.  See the License for the
# specific language governing permissions and limitations
# under the License.
# 下面添加这行
export JAVA_HOME=/usr/lib/jvm/java-1.8.0#4 然后启动be,并在mysql中连接be
[root@a7c07b27e56a be]# ./bin/start_be.sh --daemon#5 进入mysql
[root@a7c07b27e56a be]# /opt/mysql-5.7.22-linux-glibc2.12-x86_64/bin/mysql -uroot -P9030 -h127.0.0.1 --skip-ssl
WARNING: --ssl is deprecated and will be removed in a future version. Use --ssl-mode instead.
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 1
Server version: 5.7.99 Doris version doris-2.0.3-rc06-37d31a5Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved.Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.#5.1 将BE节点加入到集群中
mysql> ALTER SYSTEM ADD BACKEND "172.17.0.2:9050";
Query OK, 0 rows affected (0.04 sec)#5.2 显示doris后端详情
mysql> SHOW BACKENDS\G;
*************************** 1. row ***************************BackendId: 10830Host: 172.17.0.2HeartbeatPort: 9050BePort: 9060HttpPort: 8040BrpcPort: 8060LastStartTime: 2024-11-26 03:53:20LastHeartbeat: 2024-11-26 03:54:30Alive: true #true表示节点运行正常(如果为false,可以尝试等待一会再重新查看,第一次启动会慢一点;或有其他问题在/opt/apache-doris-1.2.4.1-bin-x86_64/be/log/be.out 里面查看日志)SystemDecommissioned: falseTabletNum: 14DataUsedCapacity: 0.000 TrashUsedCapcacity: 0.000 AvailCapacity: 19.659 GBTotalCapacity: 46.889 GBUsedPct: 58.07 %MaxDiskUsedPct: 58.07 %RemoteUsedCapacity: 0.000 Tag: {"location" : "default"}ErrMsg: Version: doris-2.0.3-rc06-37d31a5Status: {"lastSuccessReportTabletsTime":"2024-11-26 03:54:28","lastStreamLoadTime":-1,"isQueryDisabled":false,"isLoadDisabled":false}
HeartbeatFailureCounter: 0NodeRole: mix
1 row in set (0.01 sec)ERROR: 
No query specified#6 进程验证
[root@a7c07b27e56a be]# jps
1361 DorisBE
532 DorisFE
3150 Jps#7 页面验证

在这里插入图片描述


总结

至此,单机版的doris搭建完毕。

  • 参考博客 Docker单机部署Doris超详细图文教程

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/60900.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

WPF ItemsControl控件

ItemsControl 是 WPF 中一个非常灵活的控件,用于显示一组数据项。它是一个基类,许多其他控件(如 ListBox, ListView, ComboBox 等)都是从 ItemsControl 继承而来。ItemsControl 的主要特点是它可以自定义数据项的显示方式&#xf…

【漏洞复现】CVE-2020-13925

漏洞信息 NVD - CVE-2020-13925 Similar to CVE-2020-1956, Kylin has one more restful API which concatenates the API inputs into OS commands and then executes them on the server; while the reported API misses necessary input validation, which causes the hac…

Linux:文件管理(一)——文件描述符fd

目录 一、文件基础认识 二、C语言操作文件的接口 1.> 和 >> 2.理解“当前路径” 三、相关系统调用 1.open 2.文件描述符 3.一切皆文件 4.再次理解重定向 一、文件基础认识 文件 内容 属性。换句话说,如果在电脑上新建了一个空白文档&#xff0…

责任链模式在spring security过滤器链中的应用

责任链模式(Chain of Responsibility Pattern)是一种行为型设计模式,它允许多个对象按照顺序处理请求,并且每个对象可以选择自己是否处理该请求或将其传递给下一个对象。 在Spring Security中,责任链模式得到了广泛应…

mac上的建议xftp 工具

mac上的建议xftp 工具 最近使用mac比较频繁了,但是第一次重度使用mac里面有很多的工具都是新的,有的window版本的工具无法使用。 xftp 的平替 Cyberduck 从它的官网上下载是免费的,但是如果使用 Apple store 要花费198呢。这不就剩下一大笔…

异步编程中,为什么必须将conn放到后台连接

tokio::spawn(async move {if let Err(err) conn.await {let err_msg format!("Connection failed: {:?}", err);dbg!(err_msg);}});为什么不能是 if let Err(err) conn.await {let err_msg format!("Connection failed: {:?}", err);dbg!(err_msg);…

IC数字后端实现之大厂IC笔试真题(经典时序计算和时序分析题)

今天小编给大家分享下每年IC秋招春招必考题目——静态时序分析时序分析题。 数字IC后端笔试面试题库 | 经典时序Timing计算题 时序分析题1: 给定如下图所示的timing report,请回答一下几个问题。 1)这是一条setup还是hold的timing report?…

警钟长鸣,防微杜渐,遨游防爆手机如何护航安全生产?

近年来,携非防爆手机进入危险作业区引发爆炸的新闻屡见报端。2019年山西某化工公司火灾,2018年延安某煤业瓦斯爆炸,均因工人未用防爆手机产生静电打火引发。涉爆行业领域企业量大面广,相当一部分企业作业场所人员密集,…

MySQL 与 MongoDB 存储差异分析

MySQL 与 MongoDB 存储差异分析:为什么随机生成数据的存储空间不同? 在实际应用中,我们常常需要选择合适的数据库系统来处理不同类型的数据。在这个过程中,数据库的 存储机制 和 性能优化 起着至关重要的作用。对于很多开发者来说…

nginx和netcore加载常见的3D模型

背景 数字孪生带火了3D版的Web世界,3D模型格式也是众多,常见的glb适合web传输,fbx,gltf,obj,unity等常用于模型编辑和处理。我们在用netcore或者wasm加载这些3D模型文件时,一般都需要手工增加M…

mac 安装node提示 nvm install v14.21.3 failed可能存在问题

如果你在 macOS 上使用 nvm(Node Version Manager)安装 Node.js 版本 v14.21.3 时遇到安装失败的问题,可以按照以下步骤进行排查和解决: 1. 确认 nvm 安装是否正确 首先,确认你的 nvm 是否正确安装,并且能…

Mongo数据库 --- Mongo Pipeline

Mongo数据库 --- Mongo Pipeline 什么是Mongo PipelineMongo Pipeline常用的几个StageExplanation with example:MongoDB $matchMongoDB $projectMongoDB $groupMongoDB $unwindMongoDB $countMongoDB $addFields Some Query Examples在C#中使用Aggreagtion Pipeline**方法一: …

银行卡 OCR 识别 API 接口的发展前景

随着智能手机的广泛普及以及互联网的迅猛发展,“互联网 ” 时代的移动支付已然开启了智慧生活的崭新蓝图。移动支付要求进行实名认证并绑定银行卡,然而传统的手工输入银行卡号不但速度缓慢、容易出错,还极大地降低了用户体验。银行卡 OCR 识别…

华为OD机试真题---智能驾驶

华为OD机试中的“智能驾驶”题目是一道涉及广度优先搜索(BFS)算法运用的题目。以下是对该题目的详细解析: 一、题目描述 有一辆汽车需要从m * n的地图的左上角(起点)开往地图的右下角(终点)&a…

Redis与MySQL如何保证数据一致性

Redis与MySQL如何保证数据一致性 简单来说 该场景主要发生在读写并发进行时,才会发生数据不一致。 主要流程就是要么先操作缓存,要么先操作Redis,操作也分修改和删除。 一般修改要执行一系列业务代码,所以一般直接删除成本较低…

Linux宝塔部署wordpress网站更换服务器IP后无法访问管理后台和打开网站页面显示错乱

一、背景: wordpress网站搬家,更换服务器IP后,如果没有域名时,使用服务器IP地址无法访问管理后台和打开网站页面显示错乱。 二、解决方法如下: 1.wordpress搬家后,在新服务器上,新建站点时&am…

探秘嵌入式位运算:基础与高级技巧

目录 一、位运算基础知识 1.1. 位运算符 1.1.1. 与运算(&) 1.1.2. 或运算(|) 1.1.3. 异或运算(^) 1.1.4. 取反运算(~) 1.1.5. 双重按位取反运算符(~~&#xf…

MySQL底层概述—3.InnoDB线程模型

大纲 1.InnoDB的线程模型 2.IO Thread 3.Purge Thread 4.Page Cleaner Thread 5.Master Thread 1.InnoDB的线程模型 InnoDB存储引擎是多线程的模型,因此其后台有多个不同的后台线程,负责处理不同的任务。 后台线程的作用一:负责刷新内存…

充满智慧的埃塞俄比亚狼

非洲的青山 随着地球温度上升,贝尔山顶峰的冰川消失殆尽,许多野生动物移居到海拔3000米以上的高原上生活,其中就包括埃塞俄比亚狼。埃塞俄比亚狼是埃塞俄比亚特有的动物,总数不到500只,为“濒危”物种。 埃塞俄比亚狼…

pikachu平台xss漏洞详解

声明:文章只是起演示作用,所有涉及的网站和内容,仅供大家学习交流,如有任何违法行为,均和本人无关,切勿触碰法律底线 文章目录 概述:什么是xss一、反射型XSS1. get2. post 二、存储型XSS三、DOM…