作者| 陈逸飞

Docker部署的目的是在容器中快速启动部署Apache Dolphinscheduler服务。

先决条件

使用容器单机部署Dolphinscheduler

  1. 请下载源码包apache-dolphinscheduler--src.tar.gz,下载地址:下载
  • 首先确定服务启动所需的端口未被占用
    port_list=(12345 25333 5432)
    for port in ${port_list[@]};do
    netstat -an | grep $port
    done
    # 无任何输出即为端口未被占用
  • 如果端口被占用的情况下
    vim docker-compose.yml

    找到dolphinscheduler-api,修改ports。

    # 默认内容
    ports:
    - "12345:12345"
    - "25333:25333" # 根据需求修改,如:
    ports:
    - "22345:12345"
    - "35333:25333"
  1. 安装Postgresql 与 Dolphinscheduler服务
tar -zxvf apache-dolphinscheduler-<version>-src.tar.gz
cd apache-dolphinscheduler-<version>-src/deploy/docker
# 初始化数据库等
docker-compose --profile schema up -d
# 启动所有服务
docker-compose --profile all up -d

使用容器分布式部署Dolphinscheduler

  1. 在deploy文件夹下修改完成.env文件之后,复制到其他服务器
  2. 在其他需要启动Dolphinscheduler服务的服务器下,执行启动命令(如:Dolphinscheduler-api)
docker-compose up -d  dolphinscheduler-api

使用非容器化的Postgresql与zookeeper

  1. 修改环境变量
# 进入Deploy目录
cd apache-dolphinscheduler-<version>-src/deploy/docker
vim .env
## 修改以下内容
# 数据库名称
DATABASE=dolp
# 数据库连接地址
SPRING_DATASOURCE_URL=jdbc:postgresql://10.0.8.14:15432/dolp
# Zookeeper连接地址
REGISTRY_ZOOKEEPER_CONNECT_STRING=10.0.8.14:12181
# 连接数据库的用户名
SPRING_DATASOURCE_USERNAME=dolp
# 连接数据库的密码
SPRING_DATASOURCE_PASSWORD=111111
  1. 初始化
docker-compose --profile schema up -d
  1. 启动Dolphinscheduler服务
# 启动worker服务
docker-compose up -d dolphinscheduler-worker
# 启动master服务
docker-compose up -d dolphinscheduler-master
# 启动alert服务
docker-compose up -d olphinscheduler-alert
# 启动api服务
docker-compose up -d dolphinscheduler-api

让Dolphinschedule元数据库支持Mysql

  1. 下载Mysql-jdbc驱动包mysql-connector-java-8.0.16.jar
  2. 在MySQL驱动包目录下,执行以下命令
# 如果用的是默认容器启动的zookeeper和PostgreSQL,会有两条Error,忽略即可
for container_name in `docker ps |grep dolphinscheduler | awk '{print $1}'`;do docker cp ./mysql-connector-java-8.0.16.jar $container_name:/opt/dolphinscheduler/libs;done
  1. 重启所有服务
docker-compose --profile all restart

本文由 白鲸开源 提供发布支持!

Dolphinscheduler Docker部署全攻略的更多相关文章

  1. Testlink部署全攻略

    部署前准备: xampp,我下载的链接:https://www.apachefriends.org/download.html Testlink,下载地址:https://sourceforge.ne ...

  2. 在net安装程序中部署oracle客户端全攻略

    在net安装程序中部署oracle客户端全攻略 主要的是要做三件工作: 打包文件,写注册表,注册环境变量说明:我的oracle版本为9, 在2000 advanced server 上测试通过,可以正 ...

  3. 开发小白也毫无压力的hexo静态博客建站全攻略 - 躺坑后亲诉心路历程

    目录 基本原理 方法1 - 本机Windows下建站 (力荐) 下载安装node.js 用管理员权限打开命令行,安装hexo-cli和hexo 下载安装git 初始化hexo 使用hexo gener ...

  4. maven教程全攻略

    maven教程全攻略 我们在开发项目的过程中,会使用一些开源框架.第三方的工具等等,这些都是以jar包的方式被项目所引用,并且有些jar包还会依赖其他的jar包,我们同样需要添加到项目中,所有这些相关 ...

  5. 【C#代码实战】群蚁算法理论与实践全攻略——旅行商等路径优化问题的新方法

    若干年前读研的时候,学院有一个教授,专门做群蚁算法的,很厉害,偶尔了解了一点点.感觉也是生物智能的一个体现,和遗传算法.神经网络有异曲同工之妙.只不过当时没有实际需求学习,所以没去研究.最近有一个这样 ...

  6. 生成 PDF 全攻略【2】在已有PDF上添加内容

    项目在变,需求在变,不变的永远是敲击键盘的程序员..... PDF 生成后,有时候需要在PDF上面添加一些其他的内容,比如文字,图片.... 经历几次失败的尝试,终于获取到了正确的代码书写方式. 在此 ...

  7. 从小工到专家 ——读《Java程序员职场全攻略》有感

    从小工到专家 ——读<Java程序员职场全攻略>有感   <Java程序员职场全攻略>是以故事的形式,向读者介绍Java程序员的职场经验.作者牛开复在北京从事软件开发,已经是一 ...

  8. Android屏幕适配全攻略 (转载)

    http://blog.csdn.net/jdsjlzx/article/details/45891551 https://github.com/hongyangAndroid/AndroidAuto ...

  9. Moon.Orm3.8技术全攻略

    Moon.ORM技术全攻略  一.绪论 本文主要是针对Moon.ORM的技术的讨论及其使用使用指导.如有其它疑问,请留言.本文主要针对Moon.ORM3.9版本,同时将会对4.0做一个技术预览.本文从 ...

  10. TestLink安装全攻略

    TestLink安装全攻略 此文章转自该链接--http://www.cnblogs.com/Tcorner/archive/2011/07/26/2117296.html 安装前准备 需要下载xam ...

随机推荐

  1. jqurey基础知识和常用事件方法

    样式文件不需要<style>标签 引用style文件的方法 <link href="main.css" rel="stylesheet" st ...

  2. (四)Redis 缓存应用、淘汰机制

    1.缓存应用 一个系统中不同层面数据访问速度不一样,以计算机为例,CPU.内存和磁盘这三层的访问速度从几十 ns 到 100ns,再到几 ms,性能的差异很大,如果每次 CPU 处理数据时都要到磁盘读 ...

  3. 【iOS】push控制器时隐藏tabbar,dismiss控制器时显示tabbar

    在push之前将控制器的属性hidesBottomBarWhenPushed设置为yes就好. //准备要把控制器vc给push出去了 UIViewController *vc = [[UIViewC ...

  4. 基于LoRA的RLHF

    参考Github 开源模型LLM-Tuning 一.简介 (1)RLHF (基于人类反馈的强化学习) 分为三步: SFT (Supervised Fine-Tuning): 有监督的微调,使用正常的 ...

  5. W801单片机入门开发环境设置

    W801单片机入门开发环境设置 开发软件下载 烧录工具和SDK 在 WinnerMicro的网站 https://www.winnermicro.com/html/1/156/158/558.html ...

  6. 全国产T3+FPGA的SPI与I2C通信方案分享

    近年来,随着中国新基建.中国制造2025规划的持续推进,单ARM处理器越来越难胜任工业现场的功能要求,特别是如今能源电力.工业控制.智慧医疗等行业,往往更需要ARM + FPGA架构的处理器平台来实现 ...

  7. django.db.utils.InternalError: (1050, "Table 'app01_book_author' already exists")

    Django项目在执行 python manage.py migrate进行表迁移时报错 错误截图: 解决方法执行: 问题解决!!!

  8. Spring常见面试题总结

    Spring是什么? Spring是一个轻量级的IoC和AOP容器框架.是为Java应用程序提供基础性服务的一套框架,目的是用于简化企业应用程序的开发,它使得开发者只需要关心业务需求.常见的配置方式有 ...

  9. C++ 中的 lowbit

    lowbit 的定义 首先了解 lowbit 的定义 \(lowbit(n)\) ,为 \(n\) 的二进制原码中最低的一位 \(1\) 以及其后面的 \(0\) 所表示的数 举个简单的例子: 将 \ ...

  10. oeasy教您玩转linux010210管理应用aptitude

    上一部分我们都讲了什么? 下载并运行了 hollywood hollywood 更新了源的信息 sudo apt update 查看所有已经安装的软件包 # dpkg deiban 本地包管理 dpk ...