一、DataEase简介
DataEase 是开源的数据可视化分析工具,帮助用户快速分析数据并洞察业务趋势,从而实现业务的改进与优化。
DataEase 支持丰富的数据源连接,能够通过拖拉拽方式快速制作图表,并可以方便地与他人分享。
之前写过dataease1.17版的二开,新版本做了很大的升级,架构也不同了。很多朋友看了之前的文章,前来咨询,因此写了这篇文章。
二、基础准备
- Java 21
- node.js
- maven
- idea ≥ 2023.3
三、环境准备
3.1 下载源码
这里以最新的分支为例:- git clone -b v2.10.11 https://github.com/dataease/dataease.git
复制代码 3.2 MySQL准备
为快速演示,这里使用docker。
镜像拉取dataease对mysql的配置有要,新建一个 my.cnf 文件,内容如下:
注意 cnf中 NO_AUTO_CREATE_USER 已经弃用,创建镜像时会报错,可以删除。- [mysqld]
- datadir=/var/lib/mysql
- default-storage-engine=INNODB
- character_set_server=utf8
- lower_case_table_names=1
- table_open_cache=128
- max_connections=2000
- max_connect_errors=6000
- innodb_file_per_table=1
- innodb_buffer_pool_size=1G
- max_allowed_packet=64M
- transaction_isolation=READ-COMMITTED
- innodb_flush_method=O_DIRECT
- innodb_lock_wait_timeout=1800
- innodb_flush_log_at_trx_commit=0
- sync_binlog=0
- group_concat_max_len=1024000
- sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
- skip-name-resolve
- [mysql]
- default-character-set=utf8
- [mysql.server]
- default-character-set=utf8
复制代码 创建容器
这里要注意 -v 的参数路径,要与你的路径一致- docker run -p 3306:3306 \
- --restart=always \
- --name mysql8 \
- --privileged=true \
- -v /opt/mysql_docker/log:/var/log/mysql \
- -v /opt/mysql_docker/data:/var/lib/mysql \
- -v /opt/mysql_docker/my.cnf:/etc/mysql/my.cnf \
- -e MYSQL_ROOT_PASSWORD=abc123456 \
- -e TZ=Asia/Shanghai \
- mysql:8.0.31
复制代码 创建库- CREATE DATABASE `dataeaseV2demo` DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci;
复制代码 修改代码中数据源连接,如下:
3.3 前端运行
进入 目录 core/core-frontend, 执行 npm run dev
如果遇到报错: 'NODE_OPTIONS' 不是内部或外部命令,也不是可运行的程序 问题
执行如下命令- npm install cross-env --save-dev
复制代码 然后 在core-frontend/package.json中添加 cross-env 命令
解决后,再次运行前端如果执行还遇到问题,建议使用自修复,然后再run3.4 后端运行
如果core文件夹没有高亮显示,则说明IDEA没有将该文件夹识别为一个有效的maven子项目,此刻需要手动添加Maven Project,等待IDEA扫描完成。
然后添加后端依赖修改驱动加载目录
修改成- private final String FILE_PATH =
- System.getProperty("user.dir") + File.separator + "drivers";
- private final String CUSTOM_PATH =
- System.getProperty("user.dir") + File.separator + "custom-drivers" + File.separator;
复制代码 3.5 启动
启动application,和前端
访问 localhost:8100
账号:admin
初始密码 ataEase@123456
四、二开demo
这里举个例子,如何具体修改。比如我要屏蔽掉下面的小助手。
只要找到前端代码,如下
注释掉 下面内容- <el-tooltip effect="dark" :content="t('commons.assistant')" placement="bottom">
- <el-icon
-
-
- v-if="aiBaseUrl && !showOverlay && appearanceStore.getShowAi"
- >
- <Icon name="dv-ai"><dvAi @click="handleAiClick" /></Icon>
- </el-icon>
- </el-tooltip>
复制代码 再回到页面,即可完成。
五、写在最后
新版的dataease架构复杂多了,二开的难度也大幅度增加,如果没有很强的需求,建议还是二开1.17版本的。
来源:豆瓜网用户自行投稿发布,如果侵权,请联系站长删除 |