使用 Rainbond 搭建本地开发环境

简介: 在开发之前,你需要在本地安装各种开发工具和服务,比如:Mysql、Redis、Nacos 等等,我们都知道在个人电脑上安装这些服务相当的繁琐,可能会遇到很多问题,环境问题、依赖问题等等。

在开发之前,你需要在本地安装各种开发工具和服务,比如:Mysql、Redis、Nacos 等等,我们都知道在个人电脑上安装这些服务相当的繁琐,可能会遇到很多问题,环境问题、依赖问题等等。

在需要团队协作业务联调的时候,由于同事们的操作系统不统一,有 Mac、Win、Linux,可能还会遇到操作系统依赖、字符集等问题。

在上线之前,你在本地开发调试都完全没问题,部署到服务器就不能用了。经典再现:我本地好好的,咋到你部署就不能用了。

使用 Rainbond 本地开发的好处

部署方便

在对于新的项目或者新的团队时,都需要搭建新的开发环境,这个过程需要进行几个小时,而且还会遇到奇奇怪怪的问题。在团队协作时,来了新人后,同样还是需要花费几个小时去搭建环境。使用 Rainbond 将基础环境打好包,新项目、新人来了安装即用,让我们尽量避免在搭建环境上浪费时间。

统一环境

对于中小企业来说,没有太多的成本支持搭建公用的开发环境。那么就使用 Rainbond 统一开发环境,不管是 Windows、Mac 都可以安装 Rainbond,同时如果测试、生产环境也使用 Rainbond,可以直接导出应用包在测试、生产环境运行。

在本地部署 Rainbond

无论是 Windows、Mac 都可以很轻松快速的部署 Rainbond,只需要你的环境有 Docker Desktop 即可。

Mac

支持在 Mac x86、M1 上部署

curl -o install.sh https://get.rainbond.com && bash ./install.sh

Windows

docker run --privileged -d  -p 7070:7070 -p 80:80 -p 443:443 -p 6060:6060 -p 8443:8443 ^
--name=rainbond-allinone --restart=on-failure ^
-v rainbond-data:/app/data ^
-v rainbond-opt:/opt/rainbond ^
-e EIP=<你的IP地址> ^
registry.cn-hangzhou.aliyuncs.com/goodrain/rainbond:v5.10.0-dind-allinone

资源占用

在本地搭建这样一个云原生平台,最关心的当然是资源占用。因为本地的配置通常都不是很高,我的配置是 M1Pro 16G,部署 Rainbond 后在 Docker Desktop 中查看资源占用情况如下图,整体占用不大,CPU占用 ≈ 10%、内存占用 1.1GB。

基础环境搭建

你可以通过 Rainbond 开源应用商店快速的安装基础环境所需要的服务,比如:Mysql、Redis、ZK、Kafka、ES、Nacos 等等。都可以一键安装,非常简单便利。

业务部署、统一环境

通过 Rainbond 部署业务,让我们不再关心底层的 Docker 镜像用的是什么,Dockerfile 怎么写等等,由 Rainbond 统一开发环境、测试环境、生产环境,你本地能在 Rainbond 上成功部署,那么在测试、生产中同样也可以。再也不用经典再现了:“本地可以,线上咋不行”。

使用 Rainbond 在本地搭建业务,可以通过多种方式部署,Jar War包部署、源码部署都可以。

开发模块共用

在一个项目内有许多模块是公用的,比如说基础环境 Mysql、Redis,还有些用户模块、权限模块等等,我们在本地的 Rainbond 上搭建好后,将其发布到应用市场,其他同事需要直接安装,然后再开发自己的模块。

应用商店应用发布分为两种方式:

  1. 发布到内部组件库:这种方式需要导出应用包给其他同事再自己环境再导入
  2. 发布到开源应用商店:这种方式是存放到 Rainbond 的开源应用商店,其他同事直接在线拉下来,不过别的开源用户也能安装,对于项目私密的不推荐。

将我们已经部署好的应用发布到内部组件库,应用视图 -> 发布 -> 发布到组件库,进入平台管理 -> 应用市场 -> 导出应用。将下载的包给其他同事在自己的本地环境中安装即可。

最后

通过 Rainbond 在本地开发非常便捷,对于资源也占用不大,同时也能统一开发测试环境,借助 Rainbond 的应用市场功能能实现许多场景,比如上面提到的模块共用,也可以实现本地开发完就交付到演示环境、测试环境、生产环境。

相关文章
|
存储 SQL NoSQL
Redis数据结构zset详解:范围查找
Redis的几种主要数据结构,大家应该都有所了解。例如最常用的五种:字符串,list,hash,set,zset。各自的适用场景也算是比较常见容易考察的内容。但再深入一点,zset底层的数据结构是什么样子的,原理是什么?跳表和平衡树的选择,为什么没有用平衡树?zset查找单一元素和范围查找的时间复杂度是多少?那么估计就有很多人无法给出准确、明确的回答了。
859 0
Qt实用技巧:QtCreator编辑区关闭右侧不必要的警告提示
Qt实用技巧:QtCreator编辑区关闭右侧不必要的警告提示
Qt实用技巧:QtCreator编辑区关闭右侧不必要的警告提示
|
Linux 对象存储 Windows
MinIO 客户端安装与使用教程
详细讲解MinIO CLI的安装与使用
4825 0
|
9月前
|
JSON API UED
商品信息API接口的设计与实现
商品信息API接口的设计与实现,遵循RESTful原则以确保高效、可维护和良好的用户体验。API支持获取、查询、创建、更新和删除商品资源,URL模式直观易懂。请求参数通过查询字符串传递,支持分页和过滤。响应体结构化,包含数据、链接和元数据字段,便于解析。错误处理采用HTTP状态码结合JSON错误描述,提供明确反馈。
|
11月前
|
存储 机器学习/深度学习 人工智能
轻松实现向量搜索:探索 Elastic-Embedding-Searcher 项目
elastic-embedding-searcher 是一个基于 Elasticsearch 的向量搜索框架,简化了向量数据的存储和检索过程。通过结合 Elasticsearch 的分布式能力与向量表示,项目实现了高效、精准的相似度检索。支持多种流行的嵌入模型(如 BERT、Word2Vec),并能够处理大规模数据集。该项目适用于文本相似度检索、问答系统及多语言处理等场景,开发者可以轻松集成并实现高效的数据检索。
409 2
|
负载均衡 数据可视化 API
像素流送api ue多人访问需要什么显卡服务器
本文总结了关于像素流送技术的五大常见问题,包括是否支持Unity模型推流、UE多人访问的最大并发数、所需服务器配置、稳定性问题及API支持情况,旨在帮助开发者更好地理解和应用这一技术。
442 1
|
存储 运维 前端开发
淘宝 NPM 镜像站切换新域名啦
用CNPM/淘宝源的开发者们请注意,淘宝NPM 镜像站喊你切换新域名啦。新的Web 站点:https://npmmirror.com,Registry Endpoint:https://registry.npmmirror.com。随着新的域名已经正式启用,老 http://npm.taobao.org 和 http://registry.npm.taobao.org 域名将于 2022 年 05 月 31 日零时起停止服务。(望周知,求转发)
15690 1
|
Prometheus 监控 Cloud Native
Prometheus 社区与生态发展
【8月更文第29天】Prometheus 是一个开源的监控系统和时间序列数据库,以其简单易用、高性能的特点受到了广泛欢迎。自 2012 年成立以来,Prometheus 社区迅速壮大,形成了一个庞大且活跃的技术生态系统。本文将探讨 Prometheus 社区的发展趋势、相关项目和工具,以及如何参与贡献。
431 1
|
缓存 资源调度 前端开发
Yarn的安装和使用
【5月更文挑战第5天】**Yarn**是Facebook于2016年推出的快速、可靠的JavaScript包管理器,旨在解决npm的安装速度慢和依赖一致性问题。它通过确定性安装、并行下载和本地缓存提升开发体验。本文介绍了Yarn的基本概念、核心特性、安装步骤、常见问题及其解决方案,并提供了代码示例。Yarn支持工作空间管理、选择性版本安装、自动化脚本等进阶功能,与VSCode、Git和CI工具集成良好,且持续创新,如Yarn 2的PnP模式。掌握Yarn能有效提升前端开发效率和项目安全性。
1058 2
|
监控 NoSQL Java
使用redis生成全局id
使用redis生成全局id
390 0