部署 Docker 集群
适用场景
建议在 SIT 或者 DEV 环境中使用 Doris Docker 来简化部署的流程。
如在新版本中想测试某一个功能点,可以使用 Doris Docker 部署一个 Playground 环境。或者在调试的过程中要复现某个问题时,也可以使用 docker 环境来模拟。
在生产环境上,当前暂时尽量避免使用容器化的方案进行 Doris 部署。
硬件环境
需在宿主机执行如下命令
Docker Compose
不同平台需要使用不同 Image 镜像,本篇以 X86_64
平台为例。
Doris Docker 适用的网络模式有两种。
- 适合跨多节点部署的 HOST 模式,这种模式适合每个节点部署 1FE 1BE。
- 适合单节点部署多 Doris 进程的子网网桥模式,这种模式适合单节点部署(推荐),若要多节点混部需要做更多组件部署(不推荐)。
为便于展示,本章节仅演示子网网桥模式编写的脚本。
注意,以上接口必须填写信息,否则进程无法启动。
Docker Run 命令
创建子网网桥
docker network create --driver bridge --subnet=172.20.80.0/24 doris-network
3FE & 3BE Run 命令模板如有需要点击此处访问下载。
Docker Compose 脚本
1FE & 1BE 模板
version: '3'
services:
docker-fe:
container_name: "doris-fe"
hostname: "fe"
environment:
- FE_SERVERS=fe1:172.20.80.2:9010
ports:
- 8030:8030
- 9030:9030
volumes:
- /data/fe/doris-meta:/opt/apache-doris/fe/doris-meta
- /data/fe/conf:/opt/apache-doris/fe/conf
- /data/fe/log:/opt/apache-doris/fe/log
networks:
doris_net:
ipv4_address: 172.20.80.2
docker-be:
image: "apache/doris:1.2.1-be-x86_64"
container_name: "doris-be"
hostname: "be"
depends_on:
environment:
- FE_SERVERS=fe1:172.20.80.2:9010
- BE_ADDR=172.20.80.3:9050
- 8040:8040
volumes:
- /data/be/storage:/opt/apache-doris/be/storage
- /data/be/conf:/opt/apache-doris/be/conf
- /data/be/script:/docker-entrypoint-initdb.d
- /data/be/log:/opt/apache-doris/be/log
networks:
doris_net:
ipv4_address: 172.20.80.3
networks:
doris_net:
ipam:
config:
- subnet: 172.20.80.0/16
3FE & 3BE Docker Compose 脚本模板如有需要点击此处访问下载。
部署方式二选一即可:
- 执行
docker run
命令创建集群 - 保存
docker-compose.yaml
脚本,同目录下执行docker-compose up -d
命令创建集群
MacOS 由于内部实现容器的方式不同,在部署时宿主机直接修改 max_map_count
值可能无法成功,需要先创建以下容器:
容器创建成功执行以下命令:
然后 退出,创建 Doris Docker 集群。
未尽事项
- Compose Demo List