【Dolphinscheduler3.1.1】二次开发本地启动项目(前端+后端)

背景说明

由于业务的定制化开发,需要对Dolphinscheduler进行二次开发,现将项目的启动步骤记录如下。

一、 基础软件安装(必装项请自行安装)

  • Maven: v3.5+,配阿里云仓库地址即可

  • Node: v16.+

  • MySQL (5.7系列) : 两者任选其一即可

  • JDK (1.8+) : 必装

  • ZooKeeper (3.7.1) :必装

ZooKeeper安装步骤如下
  1. 官网下载压缩包并解压到D:\Program Files (x86)\zookeeper-3.4.12

  2. 在D:\Program Files (x86)\zookeeper-3.4.12目录下新建data和log文件夹
    在这里插入图片描述

  3. 复制conf目录下zoo_sample.cfg文件到同目录下,重命名为zoo.cfg(Zookeeper 在启动时会找这个文件作为默认配置文件)
    在这里插入图片描述

修改zoo.cfg中的 dataDir 和 dataLogDir 的配置项为上面新建目录的路径

在这里插入图片描述

  1. 启动测试一下
  • 服务端启动

在这里插入图片描述

  • 启动客户端连接一下,成功

在这里插入图片描述

二、下载源码到本地

源码地址:https://github.com/apache/dolphinscheduler.git

三、切换到指定分支,例如 3.1.1-xxx

四、切换到 dolphinscheduler-ui 目录

修改镜像源,推荐使用淘宝源,可以使用cnpm下载依赖

npm install -g cnpm --registry=https://registry.npmmirror.com/

安装前端依赖并运行前端组件

cd dolphinscheduler-ui
cnpm install
cnpm run dev

Dolphinscheduler-ui 模块中的代码结构如下:
在这里插入图片描述
目录说明如下:
- node_modules是依赖包
- Public是根目录
- Src是文件项
- Assets是放置静态文件,如图片
- Components是放置封装的组件文件
- Layouts是放置整体页面ui布局的文件
- Locales是放置中英双语的配置的文件
- Router是放置Dolphinschedulerui的路由文件
- Service是放置后端接口文件
- Store是放置Pinia状态管理的文件
- Themes是放置项目的深色和浅色状态时的颜色信息文件,分为dark和light
- Utils是放置封装js方法的文件
- Views是放置项目代码文件
- app.tsx是配置整体框架页面
- Main.ts是配置项目公共方法,方便全局使用

五、跳过测试编译

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

六、执行数据库脚本

– 执行脚本前,创建数据库

CREATE DATABASE dolphinscheduler;
在这里插入图片描述

七、修改ds数据源配置文件

  1. 如果使用 MySQL 作为元数据库,需要先修改 dolphinscheduler/pom.xml,将 mysql-connector-java 依赖的 scope 改为 compile

  2. 修改 Master 数据库配置,修改 dolphinscheduler-master/src/main/resources/application.yaml 文件中的数据库配置

  3. 修改 Worker 数据库配置,修改 dolphinscheduler-worker/src/main/resources/application.yaml 文件中的数据库配置

  4. 修改 Api 数据库配置,修改 dolphinscheduler-api/src/main/resources/application.yaml 文件中的数据库配置

    在这里插入图片描述

八、修改zk配置

修改application.yml中zk的连接地址,如果这里采用windows本地安装zk的方式则不用修改,否则需要修改为对应的zk地址。

在这里插入图片描述

九、修改日志级别

修改日志级别:为以下配置增加一行内容 使日志能在命令行中显示
dolphinscheduler-master/src/main/resources/logback-spring.xml
dolphinscheduler-worker/src/main/resources/logback-spring.xml dolphinscheduler-api/src/main/resources/logback-spring.xml
添加内容如下:

<appender-ref ref="STDOUT"/>

修改后内容如下:

在这里插入图片描述

十、启动服务

需要启动三个服务,包括 MasterServer,WorkerServer,ApiApplicationServer

4.1 MasterServer,同理启动WorkerServer,ApiApplicationServer
执行 org.apache.dolphinscheduler.server.master.MasterServer 中的 main 方法,并配置VM Options

-Dlogging.config=classpath:logback-spring.xml -Ddruid.mysql.usePingMethod=false -Dspring.profiles.active=mysql

注:VM Options -Dspring.profiles.active=mysql 中 mysql 表示指定的配置文件

启动时报如下错误:

Error running 'MasterServer': Command line is too long. Shorten command line for MasterServer or also for Spring Boot default configuration

解决办法:在项目的.idea/workspace.xml文件中,找到,后面在添加一行

<property name="dynamic.classpath" value="true" />

4.2 验证
启动完成可以浏览 Open API 文档,地址为 http://localhost:12345/dolphinscheduler/swagger-ui/index.html

十二、打包命令

前端打包命令

cd dolphinscheduler-ui
cnpm run build:prod

后端打包命令

mvn clean package -Prelease -Dmaven.test.skip=true

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/185943.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

m1 rvm install 3.0.0 Error running ‘__rvm_make -j8‘

在使用M1 在安装cocopods 前时&#xff0c;安装 rvm install 3.0.0遇到 rvm install 3.0.0 Error running __rvm_make -j8 备注: 该图片是借用其他博客图片&#xff0c;因为我的环境解决完没有保留之前错误信息。 解决方法如下&#xff1a; 1. brew uninstall --ignore-depe…

录屏软件无水印免费的有哪些?我来告诉你!

在日常生活和工作中&#xff0c;我们经常需要使用录屏软件来记录屏幕活动。然而&#xff0c;许多免费录屏软件在录制视频时会添加水印&#xff0c;给用户带来不便。那录屏软件无水印免费的都有哪些呢&#xff1f;在本文中&#xff0c;我们将介绍三款无水印的免费录屏软件&#…

数据结构C语言之线性表

发现更多计算机知识&#xff0c;欢迎访问Cr不是铬的个人网站 1.1线性表的定义 线性表是具有相同特性的数据元素的一个有限序列 对应的逻辑结构图形&#xff1a; 从线性表的定义中可以看出它的特性&#xff1a; &#xff08;1&#xff09;有穷性&#xff1a;一个线性表中的元…

Redis篇---第三篇

系列文章目录 文章目录 系列文章目录前言一、为什么 Redis 需要把所有数据放到内存中?二、Redis 的同步机制了解是什么?三、pipeline 有什么好处,为什么要用 pipeline?前言 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到…

免费图像压缩工具分享:15 个最佳免费图像压缩工具

您想在将图像上传到网上之前对其进行压缩吗&#xff1f;优化摄影网站的图像将有助于您的网站加载速度更快。而且&#xff0c;更快的加载速度意味着更好的搜索引擎排名&#xff01;在本指南中&#xff0c;我们将分享用于图像压缩的最佳免费图像优化工具。 许多照片编辑程序&…

有趣的按钮分享

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到网站。 广告打完&#xff0c;我们进入正题&#xff0c;先看效果&#xff1a; 废话不多&#xff0c;上源码&#xff1a; <button class&quo…

DeepMind发布新模型Mirasol3B:更高效处理音频、视频数据

Google DeepMind日前悄然宣布了其人工智能研究的重大进展&#xff0c;推出了一款名为“Mirasol3B”的新型自回归模型&#xff0c;旨在提升对长视频输入的理解能力。该新模型展示了一种颠覆性的多模态学习方法&#xff0c;以更综合和高效的方式处理音频、视频和文本数据。 Googl…

数据加解密系统(揭秘数据解密的关键技术)

数据加解密系统是一种用于保护数据安全的系统&#xff0c;它可以将数据加密以防止未经授权的访问和数据泄露&#xff0c;同时也可以将已加密的数据解密以供授权用户使用。 随着网络技术和电子商务的不断发展&#xff0c;数据安全问题越来越受到人们的关注。数据加解密系统被广泛…

【数学】距离函数(未完)

文章目录 一、声明二、无符号距离函数 (Unsigned Distance Function, UDF)Wasserstein Distance / Earth Movers Distance ☆欧氏距离 (Euclidean Distance)马氏距离 (Mahalanobis Distance)带权重的最近邻距离&#xff08;Weighted Nearest Neighbor Distance&#xff09;Cham…

智慧党建小程序源码系统+在线考试+缴费+学习 功能强大 带完整的前后端搭建教程

“智慧党建”是现代社会党建工作的一种新理念。它是运用互联网、大数据等新一代信息技术&#xff0c;实现党建信息资源融合共享&#xff0c;稳步提升新时代党建科学化水平。促使党的建设多维度全覆盖、党建措施智慧生成的实现&#xff0c;从而提升党的执政能力和治理能力。下面…

PY32F002B从压缩包到实现串口printf输出

最近学习使用芯领的PY32F002B开发板&#xff0c;记录学习历程供有同样需求的人参考。 本文主要讲述利用开发板实现printf语句串口输出。 开发环境的初步搭建 官方提供了一个压缩文件&#xff0c;文件名py32f002B_231026.zip&#xff0c; 链接&#xff1a;https://pan.baidu.c…

JPA整合Sqlite解决Dialect报错问题, 最新版Hibernate6

前言 我个人项目中&#xff0c;不想使用太重的数据库&#xff0c;而内嵌数据库中SQLite又是最受欢迎的&#xff0c; 因此决定采用这个数据库。 可是JPA并不支持Sqlite&#xff0c;这篇文章就是记录如何解决这个问题的。 原因 JPA屏蔽了底层的各个数据库差异&#xff0c; 但是…