首页 > 其他分享 >Mac使用docker安装Doris

Mac使用docker安装Doris

时间:2023-07-06 16:24:12浏览次数:41  
标签:run Mac Doris palo home docker doris fe

一、编译源码 (1)拉取编译镜像docker pull apache/incubator-doris:build-env-1.2 (2)Mac电脑上拉取源码git clone https://github.com/apache/incubator-doris.git   切换到指定分支git fetch origin branch-0.12:branch-0.12   git checkout branch-0.12 (3)建议使用Docker挂载Mac电脑上的源码编译,这样产出的二进制文件在宿主机上。同时将本地.m2目录挂载到Docker,这样Docker不用重新下载Maven依赖库   编译镜像id e847e7ed9a3c   加速编译  build.sh 中的 PARALLEL 参数调整为 4 根据编译机子性能适当调整 (4)运行编译Docker   docker run -it -v /Users/mac/.m2:/root/.m2 -v /Users/mac/JavaProject/incubator-doris:/root/incubator-doris apache/incubator-doris:build-env-1.2 (5)Docker里进入项目目录执行编译FE和BE   sh build.sh --fe --be --clean   (可选)编译broker   cd fs_brokers/apache_hdfs_broker/ && sh build.sh    编译成功后如下所示,文件在output目录下  二、Docker镜像创建 -FE和BE (1)准备资料   把编译好的fe和be拷贝到项目下docker目录中,从各自的output目录拷贝到docker目录下   下载linux版jdk1.8版本---jdk1.8.0_291,放入docker目录下    (2)在项目的docker目录下创建Docker FE镜像,名称Dockerfile_fe   构建Docker镜像:docker build -t lenmom/doris:fe-0.9.0 -f Dockerfile_fe  .

FROM centos:centos7.5.1804

RUN mkdir /home/palo/run/ -p

# copy jdk and palo binary
COPY jdk1.8.0_291/ /home/palo/run/jdk1.8.0_291/
COPY fe/ /home/palo/run/fe/

# set java home
ENV JAVA_HOME /home/palo/run/jdk1.8.0_291/

# set fe port: http/thrift/mysql/bdbje
EXPOSE 8030 9020 9030 9010

# fe log and meta-data
#VOLUME ["/home/palo/run/fe/conf" i"/home/palo/run/fe/log" "/home/palo/run/fe/palo-meta"]

WORKDIR /home/palo/run/fe/

#CMD ["/bin/sh","/home/palo/run/fe/bin/start_fe.sh"]
(3)在项目的docker目录下创建Docker BE镜像,名称Dockerfile_be   构建Docker镜像:docker build -t lenmom/doris:be-0.9.0 -f Dockerfile_be .
FROM centos:centos7.5.1804
#FROM ubuntu:18.04

RUN  mkdir -p /home/palo/run/    

RUN yum -y update \
 && yum install -y binutils-devel \
 && yum -y clean all \
 && rm -rf /var/cache/yum 

# copy be
COPY be/ /home/palo/run/be/

# set be port: thrift/rpc/http/heartbeat
EXPOSE 9060 9070 8040 9050

# be log,conf and data 
#VOLUME ["/home/palo/run/be/conf", "/home/palo/run/be/log", "/home/palo/run/be/data/"]

WORKDIR /home/palo/run/be/
RUN ldd lib/palo_be

#CMD ["/bin/sh","/home/palo/run/be/bin/start_be.sh"]
三、创建Docker镜像 (1)创建并运行三个BE容器   创建BE容器。注:查看Docker容器地址方式docker inspect --format='{{.NetworkSettings.IPAddress}}' doris-be1,需要先运行容器   IP地址:172.17.0.2 3237bb924c1a   docker run -it --name doris-be1 -p 9051:9050 -p 8041:8040 -p 9061:9060 -p 9071:9070 lenmom/doris:be-0.9.0   IP地址:172.17.0.3 f05b9866555a   docker run -it --name doris-be2 -p 9052:9050 -p 8042:8040 -p 9062:9060 -p 9072:9070 lenmom/doris:be-0.9.0   IP地址:172.17.0.4 26318fd81365   docker run -it --name doris-be3 -p 9053:9050 -p 8043:8040 -p 9063:9060 -p 9073:9070 lenmom/doris:be-0.9.0   注:每个Docker容器需要修改信息   [1]创建目录  创建 mkdir -p /home/palo/run/be/storage   [2]项目目录下修改conf/be.conf   修改为容器IP地址/子网掩码:priority_networks=容器IP/24   启动BE:bin/start_be.sh --daemon   停止BE:bin/stop_be.sh --daemon docker exec -it 3237bb924c1a /bin/bash (2)创建并运行一个FE容器。注:因为FE需要知道BE地址,所以在之后创建   注:查看Docker容器地址方式docker inspect --format='{{.NetworkSettings.IPAddress}}' doris-fe,需要先运行容器   docker run -it --name doris-fe -p 9030:9030 -p 8030:8030 -p 9010:9010 -p 9020:9020 --link doris-be1 --link doris-be2 --link doris-be3 lenmom/doris:fe-0.9.0   注:每个Docker容器需要修改信息   [1]创建目录   创建 mkdir -p /opt/fe/doris-meta   创建 mkdir -p /home/palo/run/fe/log   [2]修改conf/fe.conf   修改为容器IP地址/子网掩码:priority_networks=容器IP/24   修改meta_dir=/opt/fe/doris-meta 开启物化视图 enable_materialized_view=true   [3] JAVA_OPTS 默认 java 最大堆内存为 4GB,建议生产环境调整至 8G 以上   启动FE: bin/start_fe.sh --daemon 开启Fe的Report:mysql执行 set is_report_success=true; (3)(可选)镜像导入导出   镜像保存到本地   sudo docker save -o doris-fe-0.9.0-docker.img lenmom/doris:fe-0.9.0   导入本地镜像   sudo docker load --input doris-be-0.9.0-docker.img (4)安装Mysql客户端,连接测试用   FE容器更新yum     yum update   yum install mysql   初始化mysql密码   mysql -h 127.0.0.1 -P 9030 -uroot   SET PASSWORD FOR 'root' = PASSWORD('root'); (5)FE中添加删除BE节点(mysql操作)   在FE中查看BE节点信息:SHOW PROC '/backends'   添加BE:   ALTER SYSTEM ADD BACKEND "172.17.0.2:9050";   ALTER SYSTEM ADD BACKEND "172.17.0.3:9050";   ALTER SYSTEM ADD BACKEND "172.17.0.4:9050"; 删除BE(推荐-安全删除) ALTER SYSTEM DECOMMISSION BACKEND "172.17.0.3:9050";   删除BE(不推荐):   ALTER SYSTEM DROP BACKEND "172.17.0.3:9050"; 四、测试 (1)建数据库 CREATE DATABASE test; (2)建表 CREATE TABLE test.table_hash ( k1 TINYINT, k2 DECIMAL(10, 2) DEFAULT "10.5", v1 CHAR(10) REPLACE, v2 INT SUM ) ENGINE=olap AGGREGATE KEY(k1, k2) COMMENT "my first doris table" DISTRIBUTED BY HASH(k1) BUCKETS 32; (3)查询   select * from test.table_hash limit 1;   其它操作备注 本机拷贝内容到docker:docker cp /Users/mac/JavaProject/test fe:/opt/fe

标签:run,Mac,Doris,palo,home,docker,doris,fe
From: https://www.cnblogs.com/robots2/p/17532496.html

相关文章

  • Live Home 3D Pro Mac家装设计工具
    LiveHome3DPro是一款功能强大的Mac家装设计工具,它提供了丰富的工具和功能,使用户能够轻松创建逼真的室设计。→→↓↓载LiveHome3DPromac版 首先,LiveHome3DPro具有直观易用的界面。无论您是专业的建筑师还是家庭用户,都可以在不需要任何专业技术的情况下,快速创建自......
  • mac安装docker
    brewcaskinstalldockerdocker安装后在Launchpad找到Docker点击运行docker--version查看版本dockerrun-d-p80:80--namewebservernginx生成个测试dockerstopwebserverdockerrmwebserver  修改docker镜像地址docker运行后找到右上角docker图标点击Appl......
  • mac安装nginx
    1、查看nginx的信息brewinfonginxnginx在本地还未安装(Notinstalled),nginx的来源(From),Docroot默认为/usr/local/var/www,在/usr/local/etc/nginx/nginx.conf配置文件中默认端口被配置为8080从而使nginx运行时不需要加sudo,nginx将在/usr/local/etc/nginx/servers/目录中加载所有......
  • mac安装php单点调试环境
    页面预览和抓包方式sudophp-fpmsudokillallphp-fpm开启/usr/local/etc/nginx/nginxnginx-squit运行Charles就行 单点调试环境方式:配置apache运行的目录,然后+phpStorm的xdebug就行,postman发请求带xdebug生成的keysudoapachectlstart浏览器debug打开,phpStorm配......
  • mac spark+hive+hadoop 数据分析环境搭建(单机简版)
    apache产品下载地址:http://archive.apache.org/dist/mysql5.6brew方式安装配置:Icon mysql做为元数据存储使用。[email protected] 配置mysqlhome:exportMYSQL_HOME=/usr/local/opt/[email protected]启动mysql:$MYSQL_HOME/bin/mysql.serverstart$M......
  • Doris插入数据底层存储测试
    建表语句CREATETABLEIFNOTEXISTSbase_site_test(site_idINTDEFAULT'10',city_codeINT,user_nameVARCHAR(32)DEFAULT'',pvBIGINTDEFAULT'0')UNIQUEKEY(site_id,city_code)DISTRIBUTEDBYHASH(site_id)BUCKETS3;导入测试数据......
  • docker无法停止、删除容器
    docker无法停止删除容器怎么办? 1、利用“dockerps”查找运行的容器id。2、利用“cd/var/lib/docker/container”查找指定容器的物理位置。3、利用“servicedockerstop”停止docker服务。4、利用“rm-rf/var/lib/docker/container/{指定的id}”删除物理容器,之后重启doc......
  • Docker+Emqx+Nginx集群及负载均衡的搭建 MQTT服务器
    Docker+Emqx+Nginx集群及负载均衡的搭建MQTT服务器1.拉取镜像dockerpullemqx/emqx2.创建虚拟网络#-d参数默认为bridge,可省略dockernetworkcreate-dbridge--subnet=172.18.0.0/16emqx_bridge3.创建Docker容器#节点1dockerrun-d--hostnameemqx01--nameem......
  • docker 部署redis 主从
    创建数据目录cd/mnt&&mkdirredis-cluster&&cdredis-cluster&&mkdir-p6380/conf6381/conf6382/conf创建配置文件[root@localhostredis-cluster]#vim6380/conf/redis.conf[root@localhostredis-cluster]#vim6381/conf/redis.conf[root@l......
  • Rocky Linux 9 Minio 单机 Docker 部署
    1、DockerCE安装参考:https://www.cnblogs.com/a120608yby/p/9883175.html2、DockerCompose安装参考:https://www.cnblogs.com/a120608yby/p/14582853.html3、Minio部署#vimdocker-compose.ymlversion:'3.7'x-minio-common:&minio-commonimage:qua......