建木在 Rainbond 上使用实践

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

建木 是一个面向 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 URL: Rainbond 的访问地址,例如:http://192.168.1.1:7070
  • Rainbond Token:Rainbond 控制台 -> 个人中心 -> 访问令牌 中生成 Token。
  • Rainbond 团队ID: 例如进入到开发团队下,此时的 URL 为 http://192.168.1.1:7070/#/team/e2h5j3d8/region/rainbond/index,e2h5j3d8 就是团队ID。
  • Rainbond 集群ID: 例如进入到开发团队下,此时的 URL 为 http://192.168.1.1:7070/#/team/e2h5j3d8/region/rainbond/index,rainbond 就是集群ID。
  • Rainbond 应用ID: 例如进入到开发团队的测试应用下,此时的 URL 为 http://192.168.1.1:7070/#/team/e2h5j3d8/region/rainbond/apps/5,5 就是应用ID。
  • 镜像地址: 选择上一步的 镜像名称:镜像Tag
  • 组件名称: 部署在 Rainbond 上的组件名称,例如:java-test

运行图形化流水线

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

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

最后

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

相关文章
|
JavaScript 大数据 BI
Superset图表通过iframe嵌入Html网页展示一文详解
Superset图表通过iframe嵌入Html网页展示一文详解
2791 0
Superset图表通过iframe嵌入Html网页展示一文详解
|
15天前
|
人工智能 SEO
AI时代企业获客新引擎:Geo专家于磊老师深度解析人性化Geo优化如何助力企业提效
在AI重塑信息获取的今天,Geo专家于磊提出“人性化Geo”理念,倡导以真实经验与专业内容赢得AI与用户双重信任。通过“四轮驱动”方法论——人性化创作、结构化表达、关键词优化、精准引用,助力企业实现获客提效,构建AI时代的数字护城河。
107 4
|
存储 缓存 JavaScript
在 Vue 中使用 computed 和 watch 时,性能问题探讨
本文探讨了在 Vue.js 中使用 computed 计算属性和 watch 监听器时可能遇到的性能问题,并提供了优化建议,帮助开发者提高应用性能。
|
移动开发 JavaScript 前端开发
【Uniapp 专栏】Uniapp 与 Flutter 的功能特点对比
【5月更文挑战第15天】Uniapp 和 Flutter 是跨平台开发的热门框架。Uniapp 以其强大的跨平台兼容性和基于 Vue.js 的易学性著称,适合快速开发适用于 iOS、Android 和 H5 的应用。其丰富的组件生态简化了功能集成。然而,在复杂场景下,性能可能不及原生。Flutter 则以其全新渲染引擎实现流畅界面和高度自定义,性能接近原生,但学习成本较高,需处理特定平台适配。适用于高要求的项目。两者各有优势,选择应考虑项目需求、技术储备和开发周期。
1711 1
【Uniapp 专栏】Uniapp 与 Flutter 的功能特点对比
|
8月前
|
存储 API C#
C#之 Dictionary 详解
C#之 Dictionary 详解
198 3
|
应用服务中间件 Apache Windows
免安装版的Tomcat注册为windows服务
免安装版的Tomcat注册为windows服务
383 3
|
缓存 应用服务中间件 nginx
[nginx]proxy_cache缓存系统
[nginx]proxy_cache缓存系统
423 4
|
存储 关系型数据库 MySQL
PostgreSQL与MySQL优劣势比较浅谈
PostgreSQL与MySQL优劣势比较浅谈
2176 0
|
前端开发 JavaScript 数据可视化
前端vite+vue3——自动化配置路由布局
前端vite+vue3——自动化配置路由布局
353 0
|
SQL 弹性计算 Ubuntu
阿里云服务器操作系统怎么选择?哪个版本合适?
阿里云服务器操作系统的选择主要取决于用户的实际使用场景,阿里云百科以Web网站应用为例,程序语言如果是ASP、.NET、HTML、数据库ACCESS、SQL Server建议选择Windows;PHP、PERL、CGI、数据库MySQL、SQLite建议选择Linux。像阿里云百科主要用来搭建网站,安装的是CentOS操作系统,搭配宝塔Linux面板
3749 0
阿里云服务器操作系统怎么选择?哪个版本合适?