建木 是一个面向 DevOps 领域的极易扩展的开源无代码(图形化)/低代码(GitOps)工具,可以帮助用户轻松编排各种DevOps流程并分发到不同平台执行。

建木的图形化编排提供了多个节点,节点可以定义该步骤要执行的操作,用户可通过多个节点自由组合流水线。Rainbond 社区参与了建木节点的开发并贡献了 Rainbond组件创建与持续部署 节点。用户可使用该节点在 Rainbond 中自动创建组件和持续部署组件。

建木应用的部署则可以通过 Rainbond 开源应用商店一键安装,使建木应用的部署更简单,同时也可以作为应用插件扩展 Rainbond 构建体系。

下图是最终要实现的效果,也是建木的图形化流水线配置,本文将以下图的流程为例进行介绍:

  1. 克隆项目源代码
  2. 使用 Maven 构建项目
  3. 构建 Docker 镜像
  4. 在 Rainbond 上自动创建组件并部署

部署 Rainbond 与建木

Rainbond 部署

Rainbond 是一个云原生应用管理平台,使用简单,不需要懂容器、Kubernetes和底层复杂技术,支持管理多个Kubernetes集群,和管理企业应用全生命周期。

可参阅 基于主机安装Rainbond 文档进行安装。

建木部署

通过 Rainbond 开源应用商店一键安装建木应用,在 平台管理 -> 应用市场 -> 开源应用商店 中搜索 建木,进行安装。

安装完成后,建木应用拓扑图如下,可通过 Rainbond 默认提供的域名访问建木 UI,默认用户密码 admin/123456

同时也可以在 平台管理 -> 扩展 -> 插件 中看到建木应用插件的定义。

建木使用

将通过一个 Java SpringBoot Demo 项目进行演示,项目地址:https://gitee.com/zhangbigqi/java-maven-demo

配置图形化流水线

访问建木UI,进入图形项目。

1.添加 git clone 节点并配置 git 地址。

2.添加 maven构建 节点并配置 workspace,其他都默认。

3.搜索 rainbond,添加 构建docker镜像-rainbond 节点,并配置。

  • 配置 docker 用户和密码,用于推送镜像。需要在建木 首页 -> 密钥管理 中添加。
  • 配置镜像名称。
  • 指定 registry 地址,用于推送镜像。
  • 配置执行构建命令的目录,选择 git clone目录

4.搜索 rainbond,添加 rainbond组件创建与部署 节点,并配置。

运行图形化流水线

保存流水线配置并触发流水线执行,等待流水线执行完毕。

流水线执行完毕后,进入 Rainbond 的测试应用内,可看到组件成功创建。然后进入组件内添加 5000 端口并打开对外服务进行访问,验证服务是否正常。

最后

当然还有更高级的玩法,建木支持定义 Workflow,Workflow 支持节点并行、串行等等,但只能通过代码项目编辑 DSL 定义 Workflow。

建木在 Rainbond 上使用实践的更多相关文章

  1. 分布式链路追踪Jaeger + 微服务Pig在Rainbond上的实践分享

    随着微服务架构的流行,客户端发起的一次请求可能需要涉及到多个或 N 个服务,致使我们对服务之间的监控和排查变得更加复杂. 举个例子: 某条业务线的某个接口调用服务端时快时慢,这时就需要排查各个服务的日 ...

  2. 微服务性能分析|Pyroscope 在 Rainbond 上的实践分享

    随着微服务体系在生产环境落地,也会伴随着一些问题出现,比如流量过大造成某个微服务应用程序的性能瓶颈.CPU利用率高.或内存泄漏等问题.要找到问题的根本原因,我们通常都会通过日志.进程再结合代码去判断根 ...

  3. 干货分享!JAVA诊断工具Arthas在Rainbond上实践~

    别再担心线上 Java 业务出问题怎么办了,Arthas 帮助你解决以下常见问题: 这个类从哪个 jar 包加载的?为什么会报各种类相关的 Exception? 我改的代码为什么没有执行到?难道是我没 ...

  4. 使用 Nocalhost 开发 Rainbond 上的微服务应用

    本文将介绍如何使用 Nocalhost 快速开发 Rainbond 上的微服务应用的开发流程以及实践操作步骤. Nocalhost 可以直接在 Kubernetes 中开发应用,Rainbond 可以 ...

  5. 10分钟在 Rainbond 上部署 mall 电商项目

    很多小伙伴在学习 mall 电商项目时,都会在部署上折腾许久,虽然目前已经提供了很多种部署方式,比如 在 Linux 上部署 mall .使用 Docker 或 DockerCompose 部署 ma ...

  6. 软件架构自学笔记-- 转载“虎牙在全球 DNS 秒级生效上的实践”

    虎牙在全球 DNS 秒级生效上的实践 这次分享的是全球 DNS 秒级生效在虎牙的实践,以及由此产生的一些思考,整体上,分为以下 5 各部分: 背景介绍: 方案设计和对比: 高可用: 具体实践和落地: ...

  7. 腾讯云-ASP.NET Core+Mysql+Jexus+CDN上云实践

    腾讯云-ASP.NET Core+Mysql+Jexus+CDN上云实践.md 开通腾讯云服务器和Mysql 知识点: ASP.NET Core和 Entity Framework Core的使用 L ...

  8. zz开源 MNN:淘宝在移动 AI 上的实践

    开源 MNN:淘宝在移动 AI 上的实践   陈以鎏(离青) 阅读数:40612019 年 6 月 28 日   随着深度学习的快速发展和端侧设备算力的不断提升,原本在云端执行的推理预测工作正在部分迁 ...

  9. 虎牙在全球 DNS 秒级生效上的实践 集群内通过 raft 协议同步数据,毫秒级别完成同步。

    https://mp.weixin.qq.com/s/9bEiE4QFBpukAfNOYhmusw 虎牙在全球 DNS 秒级生效上的实践 原创: 周健&李志鹏 阿里巴巴中间件 今天

  10. 使用JMX Exporter监控Rainbond上的Java应用

    场景 Prometheus 社区开发了 JMX Exporter 用于导出 JVM 的监控指标,以便使用 Prometheus 来采集监控数据.当您的 Java 应用部署在Rainbond上后 可通过 ...

随机推荐

  1. Nexus5安装PostmarketOS(Alpine Linux)并装上Docker

    ​ Postmarket OS是一个基于Alpine Linux.能够安装到手机或其他移动设备上.当然linux deploy也可以使用SSH,但linux deploy运行在容器里.使用上会有些限制 ...

  2. 【pyqtgraph】pyqtgraph可移动竖线LineSegmentROI的拖拽事件相关

    情景 Python+PyQt+pyqtgraph读取数据绘图,并在图像上添加了LineSegmentROI带handle的竖线(hanlde是为了RectROI的拖动),现要实现竖线可以直接拖动,并在 ...

  3. 解决element-ui表格多重嵌套循环时,添加row-key="id" 出现Duplicate keys detected: 'XXX' 错误的问题

    Duplicate keys detected: 'XXX' 错误,怀疑是多重嵌套循环时 :key="item.id或index" 不能重复的问题,但设置了不同的 key 后并未解 ...

  4. Hive 操作与应用 词频统计

    一.hive用本地文件进行词频统计 1.准备本地txt文件 2.启动hadoop,启动hive 3.创建数据库,创建文本表 4.映射本地文件的数据到文本表中 5.hql语句进行词频统计交将结果保存到结 ...

  5. Linux CentOS Docker Asp.net Core MVC 模板项目的部署

    本文只是记录 .net core 3.1 项目的基本部署方法,灵活应对不同情况与需求 工具:VS 2019    Linux CentOS 7 x64 Xshell     Xftp Docker 安 ...

  6. 划分数据集时出现PermissionError: [Errno 13] Permission denied:

    PermissionError: [Errno 13] Permission denied: [errno 13]权限被拒绝 错误的原因可能是文件找不到,或者被占用,或者无权限访问,或者打开的不是文件 ...

  7. 实践课:i至诚app案例分析---江洁兰

    这个作业属于哪个课程 至诚软工实践F班 这个作业要求在哪里 作业要求 这个作业的目标 分析产品软件,找出其中的问题并进行分析,提高对产品软件bug方面的认识 学号 212106715 第一部分 找Bu ...

  8. 查看Linux内存占用情况

    参考链接: 查看Linux磁盘及内存占用情况 linux的top命令参数详解 1.ps ps aux --sort -rss a     显示所有终端机下执行的进程,包括其他用户的进程(有的进程没有终 ...

  9. Mysql 行号+分组行号+取Top记录 SQL

    Mysql 行号+分组行号+取Top记录 SQL select * from ( SELECT (@rowNum := @rowNum + 1) as rowNum -- 全量行号 , a.col1 ...

  10. 新搭建的禅道admin忘记密码

    /opt/zbox/run/mysql/mysql -uroot -p 禅道数据库root默认密码123456 MariaDB [(none)]> show databases; +------ ...