Doris Docker 快速搭建开发环境

相关详细文档导航

环境准备

  • 安装 Docker
  • VSCode
    • Remote 插件

构建镜像

创建 dockerfile

VSCode 中使用 Ctrl-d 替换掉所有的

  • <!!! your user !!!>
  • <!!! your user password !!!>
  • <!!! root password !!!>
  • <!!! your git email !!!>
  • <!!! your git username !!!>
  1. FROM apache/incubator-doris:build-env-latest
  2. USER root
  3. WORKDIR /root
  4. RUN echo '<!!! root password !!!>' | passwd root --stdin
  5. RUN yum install -y vim net-tools man wget git mysql lsof bash-completion \
  6. && cp /var/local/thirdparty/installed/bin/thrift /usr/bin
  7. # 更安全的使用,创建用户而不是使用 root
  8. RUN yum install -y sudo \
  9. && useradd -ms /bin/bash <!!! your user !!!> && echo <!!! your user password !!!> | passwd <!!! your user !!!> --stdin \
  10. && usermod -a -G wheel <!!! your user !!!>
  11. USER <!!! your user !!!>
  12. WORKDIR /home/<!!! your user !!!>
  13. RUN git config --global color.ui true \
  14. && git config --global user.email "<!!! your git email !!!>" \
  15. && git config --global user.name "<!!! your git username !!!>"
  16. # 按需安装 zsh and oh my zsh, 更易于使用,不需要的移除
  17. USER root
  18. RUN yum install -y zsh \
  19. && chsh -s /bin/zsh <!!! your user !!!>
  20. USER <!!! your user !!!>
  21. RUN wget https://github.com/robbyrussell/oh-my-zsh/raw/master/tools/install.sh -O - | zsh \
  22. && git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions \
  23. && git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting

运行构建命令

  1. docker build -t doris .

运行镜像

此处按需注意 挂载的问题Doris Docker 快速搭建开发环境 - 图4 (opens new window)

见链接中:建议以挂载本地 Doris 源码目录的方式运行镜像 …..

由于如果是使用 windows 开发,挂载会存在跨文件系统访问的问题,请自行斟酌设置

  1. docker run -it doris:latest /bin/bash

如果选择安装了 zsh 运行 容器后,在 ~/.zshrc 替换 plugins 为

  1. plugins=(git zsh-autosuggestions zsh-syntax-highlighting)

创建目录并下载 doris

  1. su <your user>
  2. mkdir code && cd code
  3. git clone https://github.com/apache/incubator-doris.git

编译

注意:

第一次编译的时候要使用如下命令

  1. sh build.sh --clean --be --fe --ui

这是因为 build-env-for-0.15.0 版本镜像升级了 thrift(0.9 -> 0.13),需要通过 —clean 命令强制使用新版本的 thrift 生成代码文件,否则会出现不兼容的代码。:

编译 Doris

  1. sh build.sh

运行

手动创建 meta_dir 元数据存放位置, 默认值为 ${DORIS_HOME}/doris-meta

  1. mkdir meta_dir

启动FE

  1. cd output/fe
  2. sh bin/start_fe.sh --daemon

启动BE

  1. cd output/be
  2. sh bin/start_be.sh --daemon

mysql-client 连接

  1. mysql -h 127.0.0.1 -P 9030 -u root