点击上方 蓝字关注我们

最近,一些小伙伴反馈对小海豚的本地开发环境搭建过程不太了解,这不就有活跃的贡献者送来新鲜的视频教程!在此感谢@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 本地开发环境搭建 | 中英文视频教程的更多相关文章

  1. spark-windows(含eclipse配置)下本地开发环境搭建

    spark-windows(含eclipse配置)下本地开发环境搭建   >>>>>>注意:这里忽略JDK的安装,JDK要求是1.8及以上版本,请通过 java  ...

  2. 【OpenStack】OpenStack系列1之OpenStack本地开发环境搭建&&向社区贡献代码

    加入OpenStack社区 https://launchpad.net/,注册用户(597092663@qq.com/Admin@123) 修改个人信息,配置SSH keys.OpenPGP keys ...

  3. 本地开发环境搭建(windows)

    一.虚拟器安装 1.概念 ・为什么要搭建搭建模拟环境 在租借服务器前用手中的PC模拟一个服务器的环境,可以打包与团队人员分享 ・什么是Vagrant https://segmentfault.com/ ...

  4. 手把手教你安装QT集成开发环境(操作系统为ubuntu10.04)

    在安装QT集成开发工具包之前需要先安装build-essential和libncurses5-dev这两个开发工具和库,libncurses5-dev库是一个在Linux/Unix下广泛应用的图形函数 ...

  5. 手把手教你安装QT集成开发环境(操作系统为ubuntu10.04,需要先安装build-essential和libncurses5-dev)

    在安装QT集成开发工具包之前需要先安装build-essential和libncurses5-dev这两个开发工具和库,libncurses5-dev库是一个在Linux/Unix下广泛应用的图形函数 ...

  6. Java 本地开发环境搭建(框架采用 Spring+Spring MVC+Hibernate+Jsp+Gradle+tomcat+mysql5.6)

    项目搭建采用技术栈为:Spring+Spring MVC+Hibernate+Jsp+Gradle+tomcat+mysql5.6 搭建环境文档目录结构说明: 使用Intellj Idea 搭建项目过 ...

  7. spark本地开发环境搭建及打包配置

    在idea中新建工程 删除新项目的src,创建moudle 在父pom中添加spark和scala依赖,我们项目中用scala开发模型,建议scala,开发体验会更好(java.python也可以) ...

  8. Windows7+VirtualBox+Ubuntu本地开发环境搭建

    首先下载相应的VirtualBox和Ubuntu镜像文件 安装Ubuntu操作系统 一 网络设置 将虚拟机的network连接模式设置为Bridge模式,注意无线网卡要与本机的无线网卡名称一致 在wi ...

  9. hadoop本地开发环境搭建

    1:下载hadoop2.7.3并解压 2:配置hadoop2.7.3环境变量 HADOOP_HOME %HADOOP_HOME%\bin 3:下载hadoop-eclipse-plugin插件 网址: ...

随机推荐

  1. 每天一个 HTTP 状态码 204

    204 No Content 204 No Content 表示服务器成功地处理了客户端的请求,但是没有任何要响应的内容.API 设计上,在用 PUT 请求更新某个资源成功后,后端可以在 HTTP 响 ...

  2. 每天一个 HTTP 状态码 102

    102 Processing 102 Processing 是用于 WebDAV协议 请求的状态码. 这个状态码表示服务器已经收到了客户端的请求,正在处理,但暂时还没有可接触的响应.可以用于防止客户端 ...

  3. SpirngBoot 错误(1)

    对于出现该错: Error starting ApplicationContext. To display the conditions report re-run your application ...

  4. drools决策表的简单使用

    目录 一.背景 二.一个简单的决策表 1.在同一个决策表中处理多个Sheet页 2.RuleSet下方可以有哪些属性 3.RuleTable下方可以有哪些属性 4.规则属性的编写 三.需求 四.实现 ...

  5. django框架8

    内容概要 ajax简介 前后端传输数据编码格式 ajax发送json格式数据 ajax携带文件数据 回调机制处理策略 内容详情 ajax简介 页面不刷新的情况下可以与后端进行数据交互 异步提交 局部刷 ...

  6. 前端工作中用到的openlayers相关的公共方法

    /** * 获取地图上的图层对象 * @param map 地图对象 * @param layerName 实例化图层时的name * @return {null}*/ getLayerByLayer ...

  7. Python中的逻辑表达式

    首先要明确一点,Python的逻辑运算符,可以用来操作任何类型的表达式(不局限于Bool类型),且运算后的结果也不一定是Bool类型的,而是其左右其中一个表达式的值 表达式1 and 表达式2 pyt ...

  8. SAP IDOC

    物料主数据 供应商主数据 价格档案 采购订单 采购计划协议 srm发货单 物料凭证 发票校验 发票校验过账或删除信息返回 CALL FUNCTION 'BAPI_INCOMINGINVOICE_PAR ...

  9. JSP页面+请求转发+EL表达式

    1) JSP全称Java Server Pages,顾名思义就是运行在java服务器中的页面,也就是在我们JavaWeb中的动态页面,其本质就是一个Servlet.2) 其本身是一个动态网页技术标准, ...

  10. 👨‍💻Mybatis源码我搞透了,面试来问吧!写了134个源码类,1.03万行代码!

    作者:小傅哥 博客:https://bugstack.cn 沉淀.分享.成长,让自己和他人都能有所收获! 一.前言:手撸一万行! 完结撒花:4个月.20章.134个类.1.03万行代码! 22年3月初 ...