DolphinScheduler 3.1.9 + Minio 开发环境【IDEA】搭建访问及相关问题处理

Apache DolphinScheduler3.1.9+Minio 海报

目录

  • DolphinScheduler 3.1.9 开发环境【IDEA】搭建访问
    • 前提
      • 1、软件要求
      • 2、克隆代码库
      • 3、编译源码
    • DolphinScheduler 普通开发模式
      • 1、编译问题:
      • 2、启动zookeeper
        • 官方内容
        • 存储配置
        • 启动脚本
      • 3、workspace.xml 修改
      • 4、数据库
        • 4-1:数据初始化
        • 4-2:依赖相关修改
      • 5、application.yaml 修改数据库配置
        • 5-1:dolphinscheduler-master
        • 5-2:dolphinscheduler-worker
        • 5-3:dolphinscheduler-api
      • 6、logback-spring.xml 修改日志级别
        • 6-1:dolphinscheduler-master
        • 6-2:dolphinscheduler-worker
        • 6-3:dolphinscheduler-api
      • 7、启动后端三个服务
        • 7-1:MasterServer
          • 配置 VM Options
        • 7-2:WorkerServer
          • 配置 VM Options
        • 7-3:ApiApplicationServer
          • 配置 VM Options
      • 8、启动前端服务
        • 命令:
      • 9、浏览器访问
        • 账号密码:
        • 成功访问:
    • 相关问题
      • 1、存储未启用、租户\\用户 指定
        • 解决方法:
          • 1、minio 创建 dolphinscheduler 桶
          • 2、commom.properties 修改
          • 3、dolphinscheduler 可视化页面添加租户
            • 用户添加租户
    • 演示
      • 创建文件夹、上传文件成功

这里按照官方提供的文档进行操作:

前提

官方提供的开发手册位置

1、软件要求

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

  • Git
  • JDK: v1.8.x (当前暂不支持 jdk 11)
  • Maven: v3.5+
  • Node: v16.13+ (dolphinScheduler 版本低于 3.0, 请安装 node v12.20+)
  • Pnpm: v6.x

2、克隆代码库

通过你 git 管理工具下载 git 代码,下面以 git-core 为例

mkdir dolphinscheduler
cd dolphinscheduler
git clone git@github.com:apache/dolphinscheduler.git

3、编译源码

支持的系统:
* MacOS
* Linux
【这个我没有运行试试】
运行 `mvn clean install -Prelease -Dmaven.test.skip=true`

DolphinScheduler 普通开发模式

上面是官方提供的,我觉得有用就复制下来,

这里开始我就按照自己的操作顺序记录

1、编译问题:

1、git相关
1-1:开启 Windows Git 长路径支持,
管理员 PowerShell 执行,解决 DolphinScheduler 路径太深导致 git add 失败
git config --system core.longpaths true1-2:先初始化git仓库,只在本地,不涉及账号、不推远程,Spotless 需要 HEAD
git init
git add .
git commit -m "initial commit"2、Maven 编译 / 格式化(IDEA 里的 Terminal)
2-1:依赖 Git HEAD,自动修复格式问题
mvn spotless:apply
2-2:编译整个项目(跳过测试),确保所有模块已 install
mvn clean install -DskipTests3、前端相关:查看 Node.js 是否已安装
node -v查看 npm 版本
npm -v安装 pnpm
npm install -g pnpm
pnpm -v

编译都没有问题

2、启动zookeeper

官方内容

下载 ZooKeeper,解压

存储配置

启动脚本

搞个txt编辑完后,后缀该bat即可

@echo off
echo 正在启动 ZooKeeper...
cd /d E:\\install\\ZooKeeper\\zookeeper-3.8.3\\bin
zkServer.cmd
pause

3、workspace.xml 修改

【可以不用,我也是看其他文章有添加的,不过我没添加也能正常运行,这里只做记录】

在其他文章看到说在这里添加这行,说是让 IDEA 在运行时动态使用模块的 classpath,而不是用启动时生成的静态 classpath。注意点:
这个作用只会影响本地 IDEA 启动,线上环境如果有问题这个是解决不了的。"dynamic.classpath": "true",

4、数据库

我这里用的是mysql,所以需要修改

4-1:数据初始化
创建名为【dolphinscheduler】的新数据库后,
把这个位置的sql直接拷贝复制执行即可。

如图:

4-2:依赖相关修改
如果使用 MySQL 作为元数据库,需要先修改 `dolphinscheduler/pom.xml`,
将 `mysql-connector-java` 依赖的 `scope` 改为 `compile`,
使用 PostgreSQL 则不需要test 改成 compile

5、application.yaml 修改数据库配置

5-1:dolphinscheduler-master
如图,配置文件中修改这些数据:三个内容都是一样的spring:config:activate:on-profile: mysqldatasource:driver-class-name: com.mysql.cj.jdbc.Driverurl: jdbc:mysql://127.0.0.1:3306/dolphinscheduler?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8username: 账户名password: 数据库密码

5-2:dolphinscheduler-worker

5-3:dolphinscheduler-api

6、logback-spring.xml 修改日志级别

6-1:dolphinscheduler-master
<appender-ref ref="STDOUT"/>

6-2:dolphinscheduler-worker

6-3:dolphinscheduler-api

7、启动后端三个服务

我们需要启动三个服务,包括 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` 中的 `main` 方法,并配置 *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`。启动完成可以浏览 Open API 文档,地址为 http://localhost:12345/dolphinscheduler/swagger-ui/index.html> VM Options `-Dspring.profiles.active=mysql` 中 `mysql` 表示指定的配置文件
7-1:MasterServer
配置 VM Options
按照操作配置这个:打开后填入即可-Dlogging.config=classpath:logback-spring.xml -Ddruid.mysql.usePingMethod=false -Dspring.profiles.active=mysql

7-2:WorkerServer
配置 VM Options

跟上面一样操作:

-Dlogging.config=classpath:logback-spring.xml -Ddruid.mysql.usePingMethod=false -Dspring.profiles.active=mysql
7-3:ApiApplicationServer
配置 VM Options
-Dlogging.config=classpath:logback-spring.xml -Dspring.profiles.active=api,mysql

总的就这三个:

8、启动前端服务

命令:
安装前端依赖并运行前端组件cd dolphinscheduler-ui
pnpm install
pnpm run dev

9、浏览器访问

账号密码:
浏览器访问:
http://localhost:5173/home默认账号密码:账号:admin
密码:dolphinscheduler123
成功访问:

相关问题

1、存储未启用、租户\用户 指定

问题:测试能否创建文件夹、上传文件等,提示【存储未启用】

问题:当前登录用户的租户信息未被指定

解决方法:

Minio 安装、启动

我这里直接用minio来尝试:

1、minio 创建 dolphinscheduler 桶

2、commom.properties 修改

配置文件改了这些地方

# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements.  See the NOTICE file distributed with
# this work for additional information regarding copyright ownership.
# The ASF licenses this file to You under the Apache License, Version 2.0
# (the "License"); you may not use this file except in compliance with
# the License.  You may obtain a copy of the License at
#
#     http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
## user data local directory path, please make sure the directory exists and have read write permissions
data.basedir.path=/tmp/dolphinscheduler# resource view suffixs
#resource.view.suffixs=txt,log,sh,bat,conf,cfg,py,java,sql,xml,hql,properties,json,yml,yaml,ini,js# resource storage type: HDFS, S3, OSS, NONE
# ljh -->   S3 is Minio--------------------------------------
resource.storage.type=S3
# resource store on HDFS/S3 path, resource file will store to this base path, self configuration, please make sure the directory exists on hdfs and have read write permissions. "/dolphinscheduler" is recommended
resource.storage.upload.base.path=/dolphinscheduler# ljh --> The account and password of MinIO-------------------------------
# The AWS access key. if resource.storage.type=S3 or use EMR-Task, This configuration is required
resource.aws.access.key.id=minioadmin
# The AWS secret access key. if resource.storage.type=S3 or use EMR-Task, This configuration is required
resource.aws.secret.access.key=minioadmin
# The AWS Region to use. if resource.storage.type=S3 or use EMR-Task, This configuration is required
resource.aws.region=cn-north-1
# ljh --> add bucket ------------------------------
# The name of the bucket. You need to create them by yourself. Otherwise, the system cannot start. All buckets in Amazon S3 share a single namespace; ensure the bucket is given a unique name.
resource.aws.s3.bucket.name=dolphinscheduler
# You need to set this parameter when private cloud s3. If S3 uses public cloud, you only need to set resource.aws.region or set to the endpoint of a public cloud such as S3.cn-north-1.amazonaws.com.cn
# ljh --> localhost convert  127.0.0.1
resource.aws.s3.endpoint=http://127.0.0.1:9000# alibaba cloud access key id, required if you set resource.storage.type=OSS
resource.alibaba.cloud.access.key.id=<your-access-key-id>
# alibaba cloud access key secret, required if you set resource.storage.type=OSS
resource.alibaba.cloud.access.key.secret=<your-access-key-secret>
# alibaba cloud region, required if you set resource.storage.type=OSS
resource.alibaba.cloud.region=cn-hangzhou
# oss bucket name, required if you set resource.storage.type=OSS
resource.alibaba.cloud.oss.bucket.name=dolphinscheduler
# oss bucket endpoint, required if you set resource.storage.type=OSS
resource.alibaba.cloud.oss.endpoint=https://oss-cn-hangzhou.aliyuncs.com# if resource.storage.type=HDFS, the user must have the permission to create directories under the HDFS root path
resource.hdfs.root.user=hdfs
# if resource.storage.type=S3, the value like: s3a://dolphinscheduler; if resource.storage.type=HDFS and namenode HA is enabled, you need to copy core-site.xml and hdfs-site.xml to conf dir
resource.hdfs.fs.defaultFS=hdfs://mycluster:8020# whether to startup kerberos
hadoop.security.authentication.startup.state=false# java.security.krb5.conf path
java.security.krb5.conf.path=/opt/krb5.conf# login user from keytab username
login.user.keytab.username=hdfs-mycluster@ESZ.COM# login user from keytab path
login.user.keytab.path=/opt/hdfs.headless.keytab# kerberos expire time, the unit is hour
kerberos.expire.time=2# resourcemanager port, the default value is 8088 if not specified
resource.manager.httpaddress.port=8088
# if resourcemanager HA is enabled, please set the HA IPs; if resourcemanager is single, keep this value empty
yarn.resourcemanager.ha.rm.ids=192.168.xx.xx,192.168.xx.xx
# if resourcemanager HA is enabled or not use resourcemanager, please keep the default value; If resourcemanager is single, you only need to replace ds1 to actual resourcemanager hostname
yarn.application.status.address=http://ds1:%s/ws/v1/cluster/apps/%s
# job history status url when application number threshold is reached(default 10000, maybe it was set to 1000)
yarn.job.history.status.address=http://ds1:19888/ws/v1/history/mapreduce/jobs/%s# datasource encryption enable
datasource.encryption.enable=false# datasource encryption salt
datasource.encryption.salt=!@#$%^&*# data quality option
data-quality.jar.name=dolphinscheduler-data-quality-dev-SNAPSHOT.jar#data-quality.error.output.path=/tmp/data-quality-error-data# Network IP gets priority, default inner outer# Whether hive SQL is executed in the same session
support.hive.oneSession=false# use sudo or not, if set true, executing user is tenant user and deploy user needs sudo permissions; if set false, executing user is the deploy user and doesn't need sudo permissions
sudo.enable=true
setTaskDirToTenant.enable=false# network interface preferred like eth0, default: empty
#dolphin.scheduler.network.interface.preferred=# network IP gets priority, default: inner outer
#dolphin.scheduler.network.priority.strategy=default# system env path
#dolphinscheduler.env.path=dolphinscheduler_env.sh# development state
development.state=false# rpc port
alert.rpc.port=50052# set path of conda.sh
conda.path=/opt/anaconda3/etc/profile.d/conda.sh# Task resource limit state
task.resource.limit.state=false# mlflow task plugin preset repository
ml.mlflow.preset_repository=https://github.com/apache/dolphinscheduler-mlflow
# mlflow task plugin preset repository version
ml.mlflow.preset_repository_version="main"# ljh --> minio must open path style
resource.aws.s3.path.style.access=true
3、dolphinscheduler 可视化页面添加租户

安全中心 - 租户管理 - 创建租户

用户添加租户

演示

创建文件夹、上传文件成功

如图,数据已经存放在我指定的minio文件夹里面了

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

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

相关文章

2026.1.22 模拟赛 T2 补题记录

我怎么这么菜。原题 考场做法是对 \(a\) 猫树分治,然后把 \(a_l, a_{l + 1}, \dots, a_r\) 在 \(b\) 中出现的数在 \(b\) 中的位置拎出来,做扫描线,用线段树求答案。 这个做法是 \(2\log\) 的,考虑如何优化。 事实…

2026年南通铜轴瓦厂推荐,雪龙铜制品如何解决用户适配性差痛点

在工业制造的精密世界里,铜轴瓦作为设备传动系统的关节软骨,其品质直接决定了机械运行的稳定性与使用寿命。面对市场上良莠不齐的铜轴瓦厂商,如何挑选到既能适配复杂工况、又能保障长期稳定供应的优质合作伙伴?以下…

2026年健身教练培训机构排名权威榜单及择校指南

随着健身行业规范化发展,专业教练需求稳步上升,选择优质培训机构是入行或进阶的关键。靠谱的机构能提供系统课程与权威认证,助力从业者快速立足。本文结合行业口碑与教学实力,精选5家机构,从核心维度拆解,为不同…

自适应夹爪品牌推荐:协作机器人的最佳拍档

在智能制造迈向柔性化、精密化与智能化的2026年,“自适应夹爪品牌如何选”已成为3C电子、新能源、半导体及汽车制造等行业采购决策的关键议题。传统气动夹爪因响应慢、力控粗、集成难,已难以满足现代产线对微米级操作…

滚丝轮有哪些品牌?一份涵盖国产与进口滚丝轮代理商的知名品牌清单

随着全球制造业向数字化、高精尖方向转型,作为金属成型加工核心部件的滚丝轮,其市场地位日益凸显。根据国际模具及五金塑胶产业供应商协会(IMDPA)发布的《2026全球金属紧固件加工设备市场预测报告》显示,预计到20…

分享时尚新颖翡翠手镯款式,如何选择适合自己的?

问题1:高品质翡翠手镯的核心判断标准是什么?天迹缘时尚玉手镯在这些方面有何优势? 高品质翡翠手镯的判断需兼顾材质本质与工艺价值两大维度:首先是玉料的种水色工瑕——种水决定通透度与温润感,颜色需均匀浓郁,工…

盘点短期内可前往的外贸展会,2026宁波星程中小工厂展排行如何?

本榜单依托全维度市场需求调研与真实参展口碑,深度筛选出五家能精准匹配外贸企业拓客需求的展会服务平台,为中小工厂及采购商选型提供客观依据,助力高效对接适配的商贸资源伙伴。 TOP1 推荐:宁波星程展览有限公司 …

自适应夹爪品牌怎么选?这个品牌值得推荐

在智能制造加速演进的2026年,“自适应夹爪品牌怎么选”已成为3C电子、半导体、新能源及汽车制造企业推进自动化升级的核心议题。面对高精密、多品种、小批量的柔性生产需求,传统气动夹爪已难以满足对力控精度、重复定…

2026年当下比较好的卧式暗装风机盘管门店有哪些,空气幕/消防排烟风机/吊顶式空调机组,卧式暗装风机盘管厂家推荐排行榜

随着建筑节能与智能化需求的升级,卧式暗装风机盘管作为中央空调系统的核心组件,其技术迭代与市场细分趋势愈发明显。2026年,行业呈现“技术驱动+场景适配”双轮发展格局,头部企业通过全链条服务能力、定制化解决方…

三指电爪哪个牌子好?选购指南与推荐

三指电爪哪个牌子好?这是当前3C电子、半导体、新能源及汽车制造等行业自动化升级过程中普遍关注的核心问题。随着工业机器人对柔性、精密和智能化执行器需求的激增,三指电爪品牌推荐成为工程师选型的重要参考。在众多…

人工智能之数据分析 Pandas:第五章 文件处理 - 教程

人工智能之数据分析 Pandas:第五章 文件处理 - 教程2026-01-22 14:47 tlnshuju 阅读(0) 评论(0) 收藏 举报pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; dis…

Web自动化测试-如何生成高质量的测试报告?

&#x1f345; 点击文末小卡片 &#xff0c;免费获取软件测试全套资料&#xff0c;资料在手&#xff0c;涨薪更快 运行了所有测试用例&#xff0c;控制台输入的结果&#xff0c;如果很多测试用例那也不能够清晰快速的知道多少用例通过率以及错误情况。 web自动化测试实战之…

学完网络安全出去能做什么工作?(非常详细)零基础入门到精通,收藏这一篇就够了

学完网络安全出去能做什么工作&#xff1f;&#xff08;非常详细&#xff09;零基础入门到精通&#xff0c;收藏这一篇就够了 想要了解学完网络安全工程师就业班后&#xff0c;出去能做什么工作&#xff0c;这个时候会分甲方或是乙方&#xff0c;看个人更偏向哪个岗位。 甲方…

PH电极选购终极指南:从国产品牌到国际排名,谁才是高精度与在线的性价比之王?

在水质监测、化工生产、食品加工、实验室分析等核心场景中,PH电极作为测量溶液酸碱度的“核心传感器”,其精度、稳定性与适配性直接决定了数据可靠性与生产安全性。面对市场上琳琅满目的国际大牌与崛起的国产品牌,如…

昭通市昭阳鲁甸巧家盐津大关英语雅思培训辅导机构推荐,2026权威出国雅思课程中心学校口碑排行榜

在全球化留学热潮下,雅思考试已成为昭通市昭阳、鲁甸、巧家、盐津、大关等区域学子通往海外名校的重要通行证,但本地雅思考生普遍面临诸多备考困境:零基础入门无方向、单项卡分难以突破、优质培训资源匮乏、留学规划…

类似谷歌搜索文献:高效文献检索与获取方案探讨

做科研的第一道坎&#xff0c;往往不是做实验&#xff0c;也不是写论文&#xff0c;而是——找文献。 很多新手科研小白会陷入一个怪圈&#xff1a;在知网、Google Scholar 上不断换关键词&#xff0c;结果要么信息过载&#xff0c;要么完全抓不到重点。今天分享几个长期使用的…

北京地区top10研究生留学机构,反馈及时,服务高效可靠

北京地区top10研究生留学机构,反馈及时,服务高效可靠一。、如何在北京筛选高效可靠的研究生留学机构2026年1月10日,许多计划攻读硕士学位的北京学子,正面临着选择留学服务机构的难题。大家的痛点通常集中在几个方面…

性能测试、负载测试、压力测试之间的区别

&#x1f345; 点击文末小卡片 &#xff0c;免费获取软件测试全套资料&#xff0c;资料在手&#xff0c;涨薪更快做测试一年多来&#xff0c;虽然平时的工作都能很好的完成&#xff0c;但最近突然发现自己在关于测试的整体知识体系上面的了解很是欠缺&#xff0c;所以&#xff…

基于ai搜索文献的高效文献检索方法与应用研究

做科研的第一道坎&#xff0c;往往不是做实验&#xff0c;也不是写论文&#xff0c;而是——找文献。 很多新手科研小白会陷入一个怪圈&#xff1a;在知网、Google Scholar 上不断换关键词&#xff0c;结果要么信息过载&#xff0c;要么完全抓不到重点。今天分享几个长期使用的…

【实战项目】 基于金融数据的投资决策可视化研究

运行效果:https://lunwen.yeel.cn/view.php?id=5948 基于金融数据的投资决策可视化研究摘要:随着金融市场的不断发展,投资决策的复杂性日益增加。为了提高投资决策的效率和准确性,本文以金融数据为基础,对投资决…