本机安装好maven,找到maven仓库位置 我这里是 /root/.m2
本机安装好docker.
官网源码下载
http://doris.incubator.apache.org/zh-CN/downloads/downloads.html#doris-%E4%B8%BB%E4%BB%A3%E7%A0%81
本机下载源码,解压。 apache-doris-0.15.0-incubating-src.tar.gz
我这里解压内容到此目录下,/opt/servers/incubator-doris-DORIS-0.15.0-release
接下来,需要一个环境(dockers环境),这个环境来编译上面的源码。注意:这不是doris的安装环境,只是编译源码的环境
docker编译环境准备拉取镜像
docker pull apache/incubator-doris:build-env-for-0.15.0
运行镜像 (挂载宿主机的mavern仓库位置;挂载宿主机的源码解压内容位置)
挂载maven路径和源码路径docker run -it -v /root/.m2:/root/.m2 -v /opt/servers/incubator-doris-DORIS-0.15.0-release:/root/incubator-doris-DORIS-0.15.0-release apache/incubator-doris:build-env-for-0.15.0 ;
注:这里挂载了maven仓库位置和源码位置。宿主机共享了这两个位置给docker容器。
上面指令运行后,自动进入了docker容器内。
在容器内。
在docker内进入到 build.sh文件所在目录。开始编译。
切换到自己将要运行的jdk版本。 容器内默认是jdk11。 我这里是1.8,所以需要切换
alternatives --set java java-1.8.0-openjdk.x86_64 alternatives --set javac java-1.8.0-openjdk.x86_64 export JAVA_HOME=/usr/lib/jvm/java-1.8.0
查看编译机器是否支持avx2指令集
cat /proc/cpuinfo | grep avx2
#第一次编译,需要加参数 --clean --be --fe --ui
二选一
如果不支持avx2指令集。执行下面编译指令
USE_AVX2=0 sh build.sh --clean --be --fe --ui
如果支持avx2指令集。执行下面编译指令
sh build.sh --clean --be --fe --ui
如下编译成功
编译完成后,be fe安装包 在 output/ 目录中。



