Docker 搭建 Doris

在 Docker 上搭建 Apache Doris 是一个快速部署分布式 SQL 数据库的方式。以下是通过 Docker 安装 Apache Doris 的步骤。

  1. 准备工作
    安装 Docker: 确保 Docker 已经安装并在你的系统中运行。可以通过命令检查 Docker 是否正确安装:
bash 复制代码
docker --version

安装 Docker Compose (可选): 如果你希望使用 Docker Compose 来管理容器,可以安装它。

  1. 下载 Apache Doris Docker 镜像
    Doris 官方并没有提供 Docker 镜像,因此通常我们使用社区维护的镜像或者自己构建。这里假设使用社区提供的镜像。
    拉取 Doris 镜像:

复制代码

bash 复制代码
docker pull apachedoris/doris:latest
  1. 启动 Docker 容器
    Apache Doris 需要部署几个关键组件:

FE (Frontend): 负责查询的解析、优化等,是 Doris 的入口。

BE (Backend): 存储数据并执行查询的计算工作。

为了方便起见,我们可以通过 docker-compose 来管理这些服务。

使用 Docker Compose 配置文件

创建 docker-compose.yml 文件:

yaml

bash 复制代码
version: '3'
services:
  fe:
    image: apachedoris/doris:latest
    container_name: doris-fe
    ports:
      - "8030:8030"    # FE 服务端口
      - "9030:9030"    # FE MySQL 接口端口
      - "8040:8040"    # FE Web UI 端口
    environment:
      - DORIS_ROLE=fe
    volumes:
      - ./data/fe:/opt/apache-doris/fe/doris-meta
    networks:
      - doris-network

  be:
    image: apachedoris/doris:latest
    container_name: doris-be
    ports:
      - "8040:8040"    # BE 端口
      - "9050:9050"    # BE 服务端口
      - "9060:9060"    # BE RPC 端口
    environment:
      - DORIS_ROLE=be
    volumes:
      - ./data/be:/opt/apache-doris/be/storage
    networks:
      - doris-network

networks:
  doris-network:
    driver: bridge

该文件定义了两个服务:FE 和 BE,它们将运行在同一 Docker 网络中。

你可以自定义 volumes 路径用于数据持久化。

  1. 启动 Doris 集群

在 docker-compose.yml 文件所在目录,运行以下命令启动集群:

bash 复制代码
docker-compose up -d
  1. 检查服务状态
    启动完成后,可以通过以下命令检查 FE 和 BE 的状态:
bash 复制代码
docker ps

FE 服务的 Web UI 可以通过浏览器访问 http://localhost:8040 来查看。FE 的 MySQL 接口也可通过 localhost:9030 连接。

  1. 创建 Doris 数据库
    通过 FE 的 MySQL 接口登录:
bash 复制代码
mysql -h 127.0.0.1 -P 9030 -uroot

然后可以运行 Doris 的 SQL 命令来创建数据库:

bash 复制代码
CREATE DATABASE test;
USE test;
CREATE TABLE example_table (
  id INT,
  name VARCHAR(100),
  value DOUBLE
) DISTRIBUTED BY HASH(id) BUCKETS 3
PROPERTIES("replication_num" = "1");

这将在集群中创建一个简单的分布式表。

  1. 停止 Doris
    要停止 Doris 集群,可以使用:
bash 复制代码
docker-compose down

总结

通过 Docker 部署 Apache Doris,您可以快速构建一个分布式 SQL 数据库环境。你可以根据需要扩展多个 BE 节点以提升计算和存储能力。

相关推荐
AOwhisky1 小时前
Linux(CentOS)系统管理入门笔记(第二十一期)——防火墙管理(Firewalld)——zone、服务端口、富规则与端口转发
linux·运维·笔记·安全·centos·防火墙
腾飞开源1 小时前
01_K8s干货笔记之认识K8s
运维·笔记·云原生·容器·kubernetes·k8s·容器化部署
布鲁飞丝8 小时前
vivo Pulsar 万亿级消息处理实践()-Ansible运维部署
运维·ansible
XR1234567888 小时前
企业全光网络架构选型技术白皮书:从物理层到运维层的全链路分析
运维·网络·架构
HiDev_9 小时前
【非标自动化】2、认识元器件(直线模组)
运维·自动化
龙仔72510 小时前
人大金仓 KingbaseES V8 只读账号创建完整运维笔记
运维·笔记·sql·人大金仓
我不管我就要叫小猪10 小时前
嵌入式Linux----网络通信
linux·运维·服务器
江湖有缘10 小时前
Docker实战 :使用Docker部署OneTerm堡垒机
运维·docker·容器
姜太小白11 小时前
【Linux】df -h 卡住问题的通用排查与解决方案总结
linux·运维·php
张忠琳11 小时前
【NPU】Ascend Docker Runtime v26.0.1 之二 runtime/process/process.go — 超深度逐行分析
云原生·容器·架构·kubernetes·npu·docker-runtime