点击上方 蓝字关注我们

最近,一些小伙伴反馈对小海豚的本地开发环境搭建过程不太了解,这不就有活跃的贡献者送来新鲜的视频教程!在此感谢@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. 跨域问题及其解决方法(JSONP&CORS)

    一.什么是跨域 当a.qq.com域名下的页⾯或脚本试图去请求b.qq.com域名下的资源时,就是典型的跨域行为.跨域的定义从受限范围可以分为两种,⼴义跨域和狭义跨域. (一)广义跨域 ⼴义跨域通常包 ...

  2. python基础数据类型1

    python基础数据类型1 part1: ''' ''': 三个单引号用于换行的字符串 字符串可以相加(拼接)相乘(重复) 在Python中没有一个专门的语法代表常量,程序员约定俗成用变量名全部大写代 ...

  3. 使用docker搭建jupyter notebook / jupyterlab

    说明 由于官方镜像实在是不怎么好用,所以我自己做了一个优化过的jupyter notebook的镜像 notebook_hub,使用我这个镜像搭建容器非常简单,下面就基于这个notebook_hub来 ...

  4. 阿里巴巴开源限流组件Sentinel初探

    1 Sentinel主页 https://github.com/alibaba/Sentinel/wiki/主页 1.1 Sentinel介绍 随着微服务的流行,服务和服务之间的稳定性变得越来越重要. ...

  5. c++ 快速乘

    First 在一些数学题中,两个数相乘运算很多,同时又很容易溢出,如两个 long long 相乘 今天本蒟蒻来总结一下快速乘的两种方法 1:二进制 和快速幂的原理一样,优化一个一个加的算法,复杂度\ ...

  6. Vue回炉重造之图片加载性能优化

    前言 图片加载优化对于一个网站性能好坏起着至关重要的作用.所以我们使用Vue来操作一波.备注 以下的优化一.优化二栏目都是我自己封装在Vue的工具函数里,所以请认真看完,要不然直接复制的话,容易出错的 ...

  7. Node.js精进(4)——事件触发器

    Events 是 Node.js 中最重要的核心模块之一,很多模块都是依赖其创建的,例如上一节分析的流,文件.网络等模块. 比较知名的 Express.KOA 等框架在其内部也使用了 Events 模 ...

  8. 基于Svelte3.x桌面端UI组件库Svelte UI

    Svelte-UI,一套基于svelte.js开发的桌面pc端ui组件库 最近一直忙于写svelte-ui,一套svelte3开发的桌面端ui组件库.在设计及功能上借鉴了element-ui组件库.所 ...

  9. Failed to Setup IP tables: Unable to enable SKIP DNAT rule: (iptables failed: iptables --wait -t nat -I DOCKER -i br-b1938128a963

    报错信息:Failed to Setup IP tables: Unable to enable SKIP DNAT rule:  (iptables failed: iptables --wait ...

  10. Mysql错误:The server time zone value is unrecognized or represents more than one time zone

    方法1.修改Mysql的时区为东8区,执行如下命令即可: PS:这种方式每次开机都要配置的 set global time_zone='+8:00' 方法2.配置改成这样的 spring.dataso ...