Doris源码编译(填坑)

因为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. 拉取镜像,启动容器

  1. 拉取镜像
docker pull apachedoris/doris-dev:build-env-1.2
  1. 启动容器,建议同时将镜像中 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
  1. 下载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. 编译

  1. 在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>
  1. 配置环境变量,指定maven的JVM内存,不然在编译过程当中会产生内存溢出。
vim /etc/profile

添加如下内容linux

export MAVEN_OPTS="-Xmx1024m -Xms256m"
  1. 编译
sh  build.sh

须要通过漫长等待,编译成功后安装包在output目录下。spring

相关文章
相关标签/搜索