手把手教你 Apache DolphinScheduler 本地开发环境搭建 | 中英文视频教程
点击上方
蓝字关注我们

最近,一些小伙伴反馈对小海豚的本地开发环境搭建过程不太了解,这不就有活跃的贡献者送来新鲜的视频教程!在此感谢@Tianqi-Dotes 的细致讲解
贡献者还贴心地录制了中英文两个视频版本,快来学习下吧!

中文版
英文版

操作步骤详解

今天来告诉大家如何在本地搭建 DolphinScheduler 源码的开发环境以及对DolphinScheduler 源码的本地启动和调试。
首先,我们打开 DolphinScheduler 官网,找到开发者菜单后,进入开发者指南。指南非常详细地介绍了如何搭建开发环境,以及如何对前端后端进行开发。
那么我们跟随官方的指引,进行 DolphinScheduler 的搭建,启动与调试。这里的笔记,我提前汇总了整个搭建过程。
首先,到 Github 上下载所有的源码,我们打开 DolphinScheduler 的 GitHub(https://github.com/apache/dolphinscheduler)。
在 GitHub 上我们可以通过 git clone 或者直接 download code。
我们选择浏览器下载 zip 压缩包,这里已经下好了。
接下来我们需要在本地安装一个 zk。
首先我们打开 zk 官网,进入 releases 页面选择一个版本进行下载。这里也已经下载好了。
首先先解压 zk 和 DolphinScheduler 的压缩包。
我们先进行 zk 的安装。打开文件夹。需要在里面新建两个目录,data 和 log。Data 用于存放 zk 的数据信息,log 用于存放 zk 的日志信息。
然后我们进入 conf 配置文件夹,将 zoo_sample.cfg 复制一份,并更名为 zoo.cfg.
然后修改里面的参数,将 data 和 log 路径设置到配置文件中,dataDir 和 dataLogDir。
接下来进入 bin 目录。直接点击 zkServer.cmd 文件进行启动。当我们看到命令行窗口就是启动了。
我们再打开客户端 zkcli 进行连接验证。
输入 ls /查看根节点的状态。看到一个节点叫 zookeeper,说明 zk 启动成功。
这样安装和启动 zk 就完成了。
下来我们为 DolphinScheduler 新建一个调试用的数据库。
我们通过 mysql 连接工具 navicat,创建一个数据库 DolphinSchedulertest。字符集选择utf8。
下来我们将源码导入到 IDE 中。在 IDEA 里选择 open 解压的 DolphinScheduler 文件夹。
接下来 idea 会根据 maven 依赖进行下载和解析。
待 IDE 读取完毕。
然后我们需要做一些配置修改。
我们需要把 pom 中,mysql-connector-java 的 scope 改为 compile。
打开 pom 文件搜索 connector,进行修改。
重新 reimport maven。
然后将 dao 模块中默认的 mysql datasource 设置改为我们刚才创建的库信息。
我们打开 dao 模块,resource 里的 datasource.properties 件。将 mysql 配置修改并注释 postgresql 配置。
接下来运行 dao 模块初始化数据库方法,这个方法会将 DolphinScheduler所需要的数据和表自动导入目标数据库。
我们直接运行CreateDolphinScheduler里的main方法。代码就开始向数据库导入数据。
结束之后,我们可以刷新数据库,所有的初始数据已经创建完成。
下来我们需要,将 DolphinScheduler-service 模块的 zk 配置改成我们本地启动的 zk 配置,localhost:2181.
打开 service 模块,resources 文件夹里的 zookeeper.properties 文件。如果已经是 localhost:2181 就不需要修改了。
下来我们可以将 worker server 日志添加在控制台中,打开 server 模块,resources 文件夹下,logback-worker 文件中,在 logback 配置中添加 STOUT 本地控制台的打印。
同样可以在 master、api 模块中添加 stout 日志打印。
接下来我们启动 4 个主服务。
第一个是执行 org.apache.dolphinscheduler.server.master.MasterServer 的 main 方法 。
搜索 MasterServer,在 server 模块下。
在启动之前,需要添加一些启动参数配置。在 IDEA 中新建一个 application,选择masterserver 这个类。设置 vm options 启动参数,指定日志配置文件和druid参数。将模块的 classpath 设置为 server 模块。
然后再找到 workerserver,做同样的参数配置。设置为 worker 日志配置文件以及 server 模块 classpath。这样 master 和 worker 就配置好了。
然后还需要配置 apiserver,同样指定日志文件以及 api 模块。
这样 3 个启动模块就配置完成。
接下来我们尝试启动,先启动 master,再启动 worker,接着启动 api。
如果我们要用到日志功能,那么可以直接启动 loggerserver,不需要任何配置。日志功能包含工作流实例执行后的查看任务日志功能。
这时可以尝试访问后端的 swagger 文档。后台的接口都已经可以列出来了。这说明启动成功。
然后我们着手启动前端。打开 ui 模块,打开 windows explorer。
我的 node 版本是 12.20.2。
首先 npm install 安装前台需要的相关依赖,最好是 nodejs。
安装完成后,我们通过 npm run start 启动。
然后访问 localhost: quadruple 8888, 使用默认的账号admin,密码dolphinscheduler123。登录成功。
可以看到我们已经成功地启动了 DolphinScheduler 前台和后台。这样我们就可以在本地环境进行 DolphinScheduler 开发和调试!
这就是今天视频的全部内容了,谢谢!
That’s all for today’s video, thanks!


☞美女亲自带你快速上手 DolphinScheduler
☞Apache DolphinScheduler 1.3.8 发布
☞Apache DolphinScheduler使用规范与使用技巧分享
点击阅读原文,加入开源!

点个在看你最好看
手把手教你 Apache DolphinScheduler 本地开发环境搭建 | 中英文视频教程的更多相关文章
- spark-windows(含eclipse配置)下本地开发环境搭建
spark-windows(含eclipse配置)下本地开发环境搭建 >>>>>>注意:这里忽略JDK的安装,JDK要求是1.8及以上版本,请通过 java ...
- 【OpenStack】OpenStack系列1之OpenStack本地开发环境搭建&&向社区贡献代码
加入OpenStack社区 https://launchpad.net/,注册用户(597092663@qq.com/Admin@123) 修改个人信息,配置SSH keys.OpenPGP keys ...
- 本地开发环境搭建(windows)
一.虚拟器安装 1.概念 ・为什么要搭建搭建模拟环境 在租借服务器前用手中的PC模拟一个服务器的环境,可以打包与团队人员分享 ・什么是Vagrant https://segmentfault.com/ ...
- 手把手教你安装QT集成开发环境(操作系统为ubuntu10.04)
在安装QT集成开发工具包之前需要先安装build-essential和libncurses5-dev这两个开发工具和库,libncurses5-dev库是一个在Linux/Unix下广泛应用的图形函数 ...
- 手把手教你安装QT集成开发环境(操作系统为ubuntu10.04,需要先安装build-essential和libncurses5-dev)
在安装QT集成开发工具包之前需要先安装build-essential和libncurses5-dev这两个开发工具和库,libncurses5-dev库是一个在Linux/Unix下广泛应用的图形函数 ...
- Java 本地开发环境搭建(框架采用 Spring+Spring MVC+Hibernate+Jsp+Gradle+tomcat+mysql5.6)
项目搭建采用技术栈为:Spring+Spring MVC+Hibernate+Jsp+Gradle+tomcat+mysql5.6 搭建环境文档目录结构说明: 使用Intellj Idea 搭建项目过 ...
- spark本地开发环境搭建及打包配置
在idea中新建工程 删除新项目的src,创建moudle 在父pom中添加spark和scala依赖,我们项目中用scala开发模型,建议scala,开发体验会更好(java.python也可以) ...
- Windows7+VirtualBox+Ubuntu本地开发环境搭建
首先下载相应的VirtualBox和Ubuntu镜像文件 安装Ubuntu操作系统 一 网络设置 将虚拟机的network连接模式设置为Bridge模式,注意无线网卡要与本机的无线网卡名称一致 在wi ...
- hadoop本地开发环境搭建
1:下载hadoop2.7.3并解压 2:配置hadoop2.7.3环境变量 HADOOP_HOME %HADOOP_HOME%\bin 3:下载hadoop-eclipse-plugin插件 网址: ...
随机推荐
- layui数据表格搜索
简单介绍 我是通过Servlet传递json给layui数据表格模块,实现遍历操作的,不过数据量大的话还是需要搜索功能的.这是我参考网上大佬代码写出的搜索功能. 实现原理 要实现搜索功能,肯定需要链接 ...
- 为什么Java有了synchronized之后还造了Lock锁这个轮子?
众所周知,synchronized和Lock锁是java并发变成中两大利器,可以用来解决线程安全的问题.但是为什么Java有了synchronized之后还是提供了Lock接口这个api,难道仅仅只是 ...
- 关于『进击的Markdown』:第二弹
关于『进击的Markdown』:第二弹 建议缩放90%食用 众里寻他千百度,蓦然回首,Markdown却在灯火灿烂处 MarkdownYYDS! 各位早上好! 我果然鸽稿了 Markdown 语法 ...
- vs2022+resharper C++ = 拥有一个不输clion的代码体验
这篇文章详细讲一下resharper C++在vs2022中的配置,让他拥有跟clion一样好用的代码补全功能. 为什么clion写代码体验很好好用为啥还要用vs呢,因为网上很多教程都是基于visua ...
- Keil软件下用Jlink无法识别芯片
Keil软件下用Jlink无法识别芯片 硬件:正点原子探索者 软件:keil J-Link固件版本:V9.40 J-Link V6.94b驱动:下载地址 跟着视频教程走,发现的第一个问题就是这个,记录 ...
- point pair feature在2D图像匹配中的应用
point pair feature在2D图像匹配中的应用 point pair feature(ppf) @article{BertramDrost2010ModelGM, title={Model ...
- 机器学习-学习笔记(二) --> 模型评估与选择
目录 一.经验误差与过拟合 二.评估方法 模型评估方法 1. 留出法(hold-out) 2. 交叉验证法(cross validation) 3. 自助法(bootstrapping) 调参(par ...
- anaconda遇到:Solving environment: failed with initial frozen solve. Retrying with flexible solve.问题
Solving environment: failed with initial frozen solve. Retrying with flexible solve. 遇到上述问题: 解决方案: # ...
- 测试人生 | 薪资翻倍涨至50W是种什么样的体验?
本文为霍格沃兹测试开发学社优秀学员跳槽笔记,测试开发进阶学习文末加群. 本人已经工作7年了,做的都是功能测试以及写一些简单的自动化脚本,加上之前没有学习的意识,导致专业技术水平与工作年限不匹配,在上家 ...
- ExtJS配置TabPanel的鼠标右键菜单(ContextMenu)功能
更新记录 2022年6月14日 发布. 2022年6月13日 初稿. TabPanel的鼠标右键菜单(ContextMenu)功能介绍 开源的TabPanel组件很少做到拖拽调整tab顺序功能的,支持 ...