Doris部署

Catalogue
  1. 一、Doris安装部署
    1. 1.1 Docker模式安装

一、Doris安装部署

官方网站:https://doris.apache.org/zh-CN/download

选择对应版本下载。

1.1 Docker模式安装

参考:https://docker.aityp.com/image/docker.io/yagagagaga/doris-standalone:2.1.6

「启动」

1
2
3
4
5
6
7
8
9
10
11
12
13
14
# 启动容器(--privileged 保证容器内权限,-p 映射核心端口)
docker run -itd \
--name doris-2.1.6 \
--privileged=true \
-p 8030:8030 \
-p 9030:9030 \
-p 9050:9050 \
-p 8040:8040 \
yagagagaga/doris-standalone:2.1.6

-p 8030:8030 # FE HTTP 端口(集群管理/API)
-p 9030:9030 # FE MySQL 协议端口(客户端连接)
-p 9050:9050 # BE heartbeat 端口(FE 与 BE 通信)
-p 8040:8040 # BE HTTP 端口

「步骤 3:连接 Doris 并测试」

1
2
3
4
# 进入容器,用内置 mysql 客户端连接 FE
docker exec -it doris-2.1.6 mysql -h 127.0.0.1 -P 9030 -u root
# 本地执行(IP 为容器宿主机 IP,本地用 127.0.0.1) 「如果本地有mysql client的话」
mysql -h 127.0.0.1 -P 9030 -u root

「基础测试 SQL(验证功能)」

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
-- 1. 查看 Doris 版本
SELECT VERSION(); -- 输出 5.7.9-doris-2.1.6 即对应版本正确

-- 2. 查看集群状态(FE/BE 均为 Normal 即正常)
SHOW FRONTENDS; -- FE 状态:Alive = true,Role = LEADER
SHOW BACKENDS; -- BE 状态:Alive = true

-- 3. 创建测试数据库和表
CREATE DATABASE IF NOT EXISTS test_db;
USE test_db;

-- 创建 OLAP 表(Doris 核心表类型)
CREATE TABLE IF NOT EXISTS test_table (
id INT COMMENT '用户ID',
name VARCHAR(50) COMMENT '用户名',
create_time DATE COMMENT '创建时间',
amount DECIMAL(10,2) COMMENT '金额'
) ENGINE=OLAP
DUPLICATE KEY(id) -- 主键类型(DUPLICATE/UNIQUE/AGGREGATE)
COMMENT '测试表'
DISTRIBUTED BY HASH(id) BUCKETS 1 -- 分桶规则(单机测试设为1)
PROPERTIES (
"replication_allocation" = "tag.location.default: 1", -- 副本数(单机设为1)
"storage_format" = "V2" -- 存储格式
);

-- 4. 插入测试数据
INSERT INTO test_table VALUES
(1, '张三', '2025-01-01', 100.50),
(2, '李四', '2025-01-02', 200.80);

-- 5. 查询数据
SELECT * FROM test_table;
-- 预期输出:
-- +------+------+-------------+--------+
-- | id | name | create_time | amount |
-- +------+------+-------------+--------+
-- | 1 | 张三 | 2025-01-01 | 100.50 |
-- | 2 | 李四 | 2025-01-02 | 200.80 |
-- +------+------+-------------+--------+

-- 6. 退出 SQL 界面
EXIT;