暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

二次开发必看!DolphinScheduler 3.1.9 开发环境搭建指南

海豚调度 2025-07-23
376

点击蓝字,关注我们

在生产实践中,Apache DolphinScheduler 3.1.9 版本因其稳定性和成熟的特性,成为众多企业用户的首选版本。随着使用深入,不少用户希望在此基础上进行二次开发,以更好地满足自身业务需求。然而,开展二次开发前,搭建完善的本地开发环境至关重要。本文结合真实案例,详细介绍 DolphinScheduler 3.1.9 的二次开发环境配置流程,希望为有定制化开发需求的用户提供实用、可靠的参考。


1

准备工作


在搭建 DolphinScheduler 开发环境之前请确保你已经安装以下软件:

  • Git
  • JDK: v1.8.x (注意DolphinScheduler3.1.9只能安装jdk v1.8.x不能升级)
  • Maven: v3.5+
  • Node: v16.13+ (dolphinScheduler 版本低于 3.0, 请安装 node v12.20+)
  • Pnpm: v6.x(注意DolphinScheduler3.1.9只能安装Pnpm v6.x不能升级)


2

打开pom.xml文件


使用idea打开pom.xml文件,作为项目打开。

在.idea目录下找到workspace.xml
,在PropertiesComponent
属性下增加下面这一行。

“dynamic.classpath”: “true“


3

下载ZooKeeper并解压


在 ZooKeeper 的目录下新建 Data文件夹。

将 conf 目录下的 zoo_sample.cfg
 文件复制一份,重命名为 zoo.cfg
,修改其中数据的配置,如下:

dataDir
路径设置为刚刚新建的Data文件夹目录。

然后启动服务,运行 ./bin/zkServer.cmd


4

修改数据库配置


打开dolphinscheduler-bom
模块的pom
文件修改数据库配置。

使用postgresql不用修改,使用mysql则需要修改。将MySQL的依赖中的test
改为compile
右上角的Maven
要记得点击进行更新。


5

创建数据库并初始化



安装mysql,推荐使用8.0.16+。

创建完数据库后进行初始化。如下图所示,将文件中的sql语句复制出来在数据库上执行初始化。


6

配置MySQL


配置dolphinscheduler-alert
dolphinscheduler-api
dolphinscheduler-master
dolphinscheduler-worker
application.yaml
文件和logback-spring.xml
文件,把postgresql
改为mysql配置并修改日志级别。

例如dolphinscheduler-master
配置mysql如下所示:

例如dolphinscheduler-master
修改日志级别,以及在logback-spring.xml
文件中修改如下所示:


7

修改模块配置


修改 dolphinscheduler-ui 模块的 package.json

为了避免版本冲突,打开dolphinscheduler-ui
模块的package.json
文件,去除所有^
符号。


8

启动后端服务和前端服务


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

  • MasterServer
    :在Intellij IDEA
    中执行
     org.apache.dolphinscheduler.server.master.MasterServer
    中的main
    方法,并配置VM Options -Dlogging.config=classpath:logback-spring.xml -Ddruid.mysql.usePingMethod=false -Dspring.profiles.active=mysql
  • WorkerServer
    :在Intellij IDEA
    中执行
     org.apache.dolphinscheduler.server.worker.WorkerServer
    中的mai
    方法,并配置VM Options -Dlogging.config=classpath:logback-spring.xml -Ddruid.mysql.usePingMethod=false -Dspring.profiles.active=mysql
  • ApiApplicationServer
    :在Intellij IDEA
    中执行
     org.apache.dolphinscheduler.api.ApiApplicationServer
    中的main
    方法,并配置VM Options -Dlogging.config=classpath:logback-spring.xml -Dspring.profiles.active=api,mysql

打开运行配置,打开添加虚拟机选项然后输入上述命令并确定,即可完成配置。

最后在dolphinscheduler-ui
目录下运行如下命令,安装前端依赖并运行前端组件:


运行起来后就会看见端口,浏览器打开即可看到网页。

原文链接:https://blog.csdn.net/qq_42838399/article/details/149167971





用户案例





 Zoom网易邮箱 每日互动 惠生工程
  作业帮 
博世智驾 蔚来汽车 长城汽车集度长安汽车
思科网讯食行生鲜联通医疗联想
新网银行唯品富邦消费金融 
自如有赞伊利当贝大数据
珍岛集团传智教育Bigo
YY直播  三合一太美医疗
Cisco Webex兴业证券




迁移实战



Azkaban   Ooize(当贝迁移案例)
Airflow (有赞迁移案例)
Air2phin(迁移工具)
Airflow迁移实践



发版消息




Apache DolphinScheduler 3.2.2版本正式发布!
Apache DolphinScheduler 3.2.1 版本发布:增强功能与安全性的全面升级
Apache DolphinScheduler 3.3.0 Alpha发布,功能增强与性能优化大升级!




加入社区



关注社区的方式有很多:

  • GitHub: https://github.com/apache/dolphinscheduler
  • 官网:https://dolphinscheduler.apache.org/en-us
  • 订阅开发者邮件:dev@dolphinscheduler@apache.org
  • X.com:@DolphinSchedule
  • YouTube:https://www.youtube.com/@apachedolphinscheduler
  • Slack:https://join.slack.com/t/asf-dolphinscheduler/shared_invite/zt-1cmrxsio1-nJHxRJa44jfkrNL_Nsy9Qg

同样地,参与Apache DolphinScheduler 有非常多的参与贡献的方式,主要分为代码方式和非代码方式两种。

📂非代码方式包括:

完善文档、翻译文档;翻译技术性、实践性文章;投稿实践性、原理性文章;成为布道师;社区管理、答疑;会议分享;测试反馈;用户反馈等。

👩‍💻代码方式包括:

查找Bug;编写修复代码;开发新功能;提交代码贡献;参与代码审查等。

贡献第一个PR(文档、代码) 我们也希望是简单的,第一个PR用于熟悉提交的流程和社区协作以及感受社区的友好度。

社区汇总了以下适合新手的问题列表https://github.com/apache/dolphinscheduler/pulls?q=is%3Apr+is%3Aopen+label%3A%22first+time+contributor%22

优先级问题列表https://github.com/apache/dolphinscheduler/pulls?q=is%3Apr+is%3Aopen+label%3Apriority%3Ahigh

如何参与贡献链接https://dolphinscheduler.apache.org/zh-cn/docs/3.2.2/%E8%B4%A1%E7%8C%AE%E6%8C%87%E5%8D%97_menu/%E5%A6%82%E4%BD%95%E5%8F%82%E4%B8%8E_menu

如果你❤️小海豚,就来为我点亮Star吧!

https://github.com/apache/dolphinscheduler


你的好友秀秀子拍了拍你

并请你帮她点一下“分享”

文章转载自海豚调度,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论