因爲doris官方不提供安裝包,須要本身編譯。官網上提供兩種編譯方式,使用docker鏡像編譯和直接下載源碼包進行編譯。下載源碼包編譯會產生各類各樣的環境配置以及依賴下載問題,成功率極低。所以推薦使用docker進行編譯。java
1. 安裝docker
yum -y update yum install -y yum-utils device-mapper-persistent-data lvm2 yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo yum list docker-ce --showduplicates | sort -r yum install -y docker-ce-18.06.3.ce systemctl start docker systemctl enable docker
2. 拉取鏡像,啓動容器
- 拉取鏡像
docker pull apachedoris/doris-dev:build-env-1.2
- 啓動容器,建議同時將鏡像中 maven 的 .m2 目錄掛載到宿主機目錄,以防止每次啓動鏡像編譯時,重複下載 maven 的依賴庫
docker run -it -v /opt/modules/complie-doris/.m2:/root/.m2 -v /opt/modules/complie-doris/incubator-doris-DORIS-0.13.0-release/:/root/incubator-doris-DORIS-0.13.0-release/ apachedoris/doris-dev:build-env-1.2
- 下載doris源碼到指定目錄
cd incubator-doris-DORIS-0.13.0-release wget http://archive.apache.org/dist/incubator/doris/0.13.0-incubating/apache-doris-0.13.0-incubating-src.tar.gz # 解壓並進入到解壓包的根目錄 tar -zxvf apache-doris-0.13.0-incubating-src.tar.gz -C ./ cd apache-doris-0.13.0-incubating-src
3. 編譯
- 在fe/pom.xml中有些配置須要修改
<!-- for general repository --> <profile> <id>general-env</id> <activation> <property> <name>!env.CUSTOM_MAVEN_REPO</name> </property> </activation> <repositories> <repository> <id>central</id> <name>central maven repo https</name> <url>https://repo.maven.apache.org/maven2</url> </repository> <!-- for java-cup --> <repository> <id>cloudera-thirdparty</id> <url>https://repository.cloudera.com/content/repositories/third-party/</url> // 將上面兩行配置**改成**下面兩行** <id>cloudera-public</id> <url>https://repository.cloudera.com/artifactory/public/</url> </repository> <!-- for bdb je --> <repository> <id>oracleReleases</id> <url>http://download.oracle.com/maven</url> </repository> </repositories> <pluginRepositories> <!-- for cup-maven-plugin --> <pluginRepository> <id>spring-plugins</id> <url>https://repo.spring.io/plugins-release/</url> // 將上面兩行配置**改成**下面兩行** <id>cloudera-public</id> <url>https://repository.cloudera.com/artifactory/public/</url> </pluginRepository> </pluginRepositories> </profile>
- 配置環境變量,指定maven的JVM內存,不然在編譯過程當中會產生內存溢出。
vim /etc/profile
添加如下內容linux
export MAVEN_OPTS="-Xmx1024m -Xms256m"
- 編譯
sh build.sh
須要通過漫長等待,編譯成功後安裝包在output目錄下。spring