DataEase 本地模式部署下,Excel 数据集、API 数据集及定时同步依赖于 Kettle 及 Doris 两个组件,因此在开发环境需要调试 Excel 数据集、API 数据集及定时同步的情况下需要部署 Kettle 及 Doris 两个组件,本文以 Windows 开发环境为例,演示如何部署 Kettle 及 Doris 两个组件完成 Excel 数据集的上传。
1 安装 Docker Desktop
首先我们需要安装 Docker Desktop ,这一步不做赘述,自行百度安装即可。
2 拉取 DataEase 离线安装包制作工程源码
接下来我们拉取下 https://github.com/dataease/installer 的源码
3 环境准备
以 dataease 代码所在的盘为根目录,创建如下路径:
/opt/dataease/data/kettle
/opt/dataease/data/fe
/opt/dataease/data/be
/opt/dataease/logs/fe
/opt/dataease/logs/be
如图所示,本人的 dataease 代码在 D 盘,因此以 D 盘为根目录创建文件夹:
接下来我们进入下载好的 install 的源码里,将如下文件拷贝至 /opt/dataease/conf 下,如下图所示:
再将 bin 文件夹拷贝至 /opt/dataease 目录,如下所示:
接下来我们手动将 install 源码包里的 docker-compose-doris.yml、docker-compose-kettle.yml 两个文件整合到一起,注意替换 ${xxxx} 参数,整合后的文件如下所示:
注意:
1、Windows docker 文件挂载时,宿主机的目录需要带上盘符,如:D:/opt/dataease/conf/。
2、kettle 容器的 18080 端口、doris-fe 容器的 9030、8030 端口需要手动开放。
version: '2.1'
services:
kettle:
image: registry.cn-qingdao.aliyuncs.com/dataease/kettle:v8.3-0318
container_name: kettle
environment:
- PENTAHO_DI_JAVA_OPTIONS=-Xms1024m -Xmx4096m -XX:MaxPermSize=256m -Dfile.encoding=utf-8
volumes:
- D:/opt/dataease/conf/:/opt/dataease/conf
- D:/opt/dataease/data/kettle:/opt/dataease/data/kettle
ports:
- 18080:18080
networks:
- dataease-network
restart: always
doris-fe:
image: registry.cn-qingdao.aliyuncs.com/dataease/doris:v1.1.0-0704
container_name: doris-fe
environment:
- DORIS_ROLE=fe-leader
volumes:
- D:/opt/dataease/data/fe:/opt/doris/fe/doris-meta
- D:/opt/dataease/logs/fe:/opt/doris/fe/log
- D:/opt/dataease/conf/fe.conf:/opt/doris/fe/conf/fe.conf
- D:/opt/dataease/bin/doris/:/docker-entrypoint-initdb.d
ports:
- 8030:8030
- 9030:9030
networks:
dataease-network :
ipv4_address: 172.19.0.198
restart: always
depends_on:
doris-be:
condition: service_healthy
healthcheck:
test: [ "CMD-SHELL", "curl -sS 127.0.0.1:8030 || exit 1" ]
interval: 10s
timeout: 5s
retries: 3
doris-be:
image: registry.cn-qingdao.aliyuncs.com/dataease/doris:v1.1.0-0704
container_name: doris-be
environment:
- DORIS_ROLE=be
volumes:
- D:/opt/dataease/data/be:/opt/doris/be/storage
- D:/opt/dataease/logs/be:/opt/doris/be/log
- D:/opt/dataease/conf/be.conf:/opt/doris/be/conf/be.conf
networks:
dataease-network :
ipv4_address: 172.19.0.199
restart: always
healthcheck:
test: [ "CMD-SHELL", "curl -sS 127.0.0.1:8040 || exit 1" ]
interval: 10s
timeout: 5s
retries: 3
networks:
dataease-network:
driver: bridge
ipam:
driver: default
config:
- subnet: 172.19.0.0/16
gateway: 172.19.0.1
将此文件放置到任意目录,我放置在 /opt/dataease 下:
4 启动 Kettle 及 Doris
进入命令行,执行如下命令:
docker-compose -f docker-compose-kettle-doris.yml up -d
执行 docker ps 查看容器状态,当容器状态均为 healthy 的时候,服务即启动完成,需要注意的是 kettle 没有状态检测,只要看到 doris-fe 、doris-be 状态为 healthy 后,服务即启动成功。如下所示:
5 修改 DataEase 配置文件
接着我们修改下 dataease.properties 里 kettle 及 doris 的配置:
注意,这边的 host 需填写 Windows 本机的 IP 地址,不能填写 localhost。
carte.host=192.168.2.21
carte.port=18080
carte.user=cluster
carte.passwd=cluster
doris.db=dataease
doris.user=root
doris.password=Password123@doris
doris.host=192.168.2.21
doris.port=9030
doris.httpPort=8030
启动 DataEase 服务,验证是否可以正常上传 Excel。
上传成功。