一步一步編譯最新版Apache Doris 0.15版本的詳細過程

Rickie發表於2021-12-04
Apache Doris 於 2021 年 11 月 29 日迎來了 0.15.0 Release 版本的正式釋出!有 99 位 Contributor 為 Apache Doris 提交了近 700 項最佳化和修復。在 0.15.0 Release 版本中,增加了諸多新功能,對 Apache Doris 的查詢效能、易用性、穩定性方面等進行了全面最佳化。

 

本文將詳細演示如何一步一步完成編譯最新版Apache Doris 0.15版本。
 
一、下載Docker開發編譯映象
針對不同的Doris版本,需要下載對應的映象版本。當前,Doris最新release版本是0.15.0。
一步一步編譯最新版Apache Doris 0.15版本的詳細過程
選擇該版本對應的docker開發編譯映象,如圖所示。針對不同的 Doris 版本,需要下載對應的映象版本。
一步一步編譯最新版Apache Doris 0.15版本的詳細過程
Apache doris 0.15.0 版本選擇使用apache/incubator-doris:build-env-1.4.2 編譯。
 
執行如下命令下載docker映象:
docker pull apache/incubator-doris:build-env-1.4.2
一步一步編譯最新版Apache Doris 0.15版本的詳細過程
 
二、下載Apache Doris原始碼
當前Apache Doris最新release版本為 0.15.0,如圖所示:
一步一步編譯最新版Apache Doris 0.15版本的詳細過程
(1)下載doris原始碼
建立doris目錄(mkdir doris-0.15),然後下載doris原始碼:
wget https://dlcdn.apache.org/incubator/doris/0.15.0-incubating/apache-doris-0.15.0-incubating-src.tar.gz
 
執行過程如下所示:
[root@centos-103 ~]# mkdir doris-0.15
[root@centos-103 ~]# cd doris-0.15
[root@centos-103 doris-0.15]#wget https://dlcdn.apache.org/incubator/doris/0.15.0-incubating/apache-doris-0.15.0-incubating-src.tar.gz
一步一步編譯最新版Apache Doris 0.15版本的詳細過程
 
(2)解壓
執行如下命令進行原始碼包解壓:
tar vxf apache-doris-0.15.0-incubating-src.tar.gz
 
解壓完成之後,如下所示:
[root@centos-103 doris-0.15]# ls
apache-doris-0.15.0-incubating-src  apache-doris-0.15.0-incubating-src.tar.gz
 
三、啟動Docker容器
需要做兩個目錄對映,一個是maven的repository目錄,一個是doris原始碼目錄,避免容器掛了之後之前下載或編譯的內容丟失。
Docker啟動命令如下所示:
docker run -it -v /root/.m2:/root/.m2 -v /root/doris-0.15/apache-doris-0.15.0-incubating-src:/root/doris-0.15/apache-doris-0.15.0-incubating-src apache/incubator-doris:build-env-1.4.2
一步一步編譯最新版Apache Doris 0.15版本的詳細過程
在 build-env-1.4.2 的docker映象中,同時包含了 OpenJDK 8 和 OpenJDK 11,並且預設使用 OpenJDK 11 編譯。
可以使用 java -version 命令檢視,如上圖所示。
 
請確保編譯使用的 JDK 版本和執行時使用的 JDK 版本一致,否則會導致非預期的執行錯誤。你可以使用在進入編譯映象的容器後,使用以下命令切換預設 JDK 版本:
切換到 JDK 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
切換到 JDK 11:
$ alternatives --set java java-11-openjdk.x86_64
$ alternatives --set javac java-11-openjdk.x86_64
$ export JAVA_HOME=/usr/lib/jvm/java-11
由於我們的執行時為JDK 8,因此切換到JDK 8環境。
一步一步編譯最新版Apache Doris 0.15版本的詳細過程
 
四、編譯Doris
現在準備妥當了,可以開始編譯Apache Doris原始碼包了。
在進入docker容器之後,進入到/root/doris-0.15/apache-doris-0.15.0-incubating-src 原始碼對映目錄中,執行編譯命令。
sh build.sh
一步一步編譯最新版Apache Doris 0.15版本的詳細過程
開始漫長的編譯過程 ... 編譯過程有點慢。
一步一步編譯最新版Apache Doris 0.15版本的詳細過程
編譯之後輸出至output目錄,有3個子目錄:be、fe、udf,只需要複製output目錄到其他伺服器即可。
[root@c7738df1c0f4 apache-doris-0.15.0-incubating-src]# ls output
be  fe  udf
退出Docker 容器,然後可以將output目錄中的所有內容複製到另一個目錄中,如/root/doris-0.15,命令如下所示:
cp -r output/* /root/doris-0.15
一步一步編譯最新版Apache Doris 0.15版本的詳細過程
output目錄下,複製出來就是可以安裝了。
 

 

 

相關文章