在開發之前,你需要在本地安裝各種開發工具和服務,比如: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 上搭建好後,將其釋出到應用市場,其他同事需要直接安裝,然後再開發自己的模組。
應用商店應用釋出分為兩種方式:
- 釋出到內部元件庫:這種方式需要匯出應用包給其他同事再自己環境再匯入
- 釋出到開源應用商店:這種方式是存放到 Rainbond 的開源應用商店,其他同事直接線上拉下來,不過別的開源使用者也能安裝,對於專案私密的不推薦。
將我們已經部署好的應用釋出到內部元件庫,應用檢視 -> 釋出 -> 釋出到元件庫,進入平臺管理 -> 應用市場 -> 匯出應用。將下載的包給其他同事在自己的本地環境中安裝即可。
最後
透過 Rainbond 在本地開發非常便捷,對於資源也佔用不大,同時也能統一開發測試環境,藉助 Rainbond 的應用市場功能能實現許多場景,比如上面提到的模組共用,也可以實現本地開發完就交付到演示環境、測試環境、生產環境。