最近有幸試用了一下阿里云的一個新產品:云開發平臺,體驗一把全新的開發模式!雖然中間也碰到了一些問題,但整體的體驗透露著未來感,因為整個程序都不需要使用我們最常用的IDEA,僅依靠瀏覽器就把一個Spring Boot干上線了!
啥是云開發平臺?云開發平臺(https://workbench.aliyun.com),是阿里云面向廣大開發者提供的云上研發作業平臺,助力研發團隊實作作業的在線化(團隊在線、環境在線、代碼在線、協同在線)以及研發模式Serverless化,幫助研發團隊實作對行業架構經驗及架構服務的高效分享與傳播,極致提升研發效率,極致降低研發成本,
下面,我就來分享一下如何在這個平臺中開發與部署Spring Boot應用!有興趣的童鞋,可以點擊進入云開發平臺,一步步跟我體驗完整的開發體驗!
基礎配置
第一步:創建新應用

第二步:選擇“Microservice”,解決方案選擇“Spring Boot應用遷移方案(SAE)”或“Spring Boot應用遷移方案(ASK)”,之前寫過很多Spring Boot例子,所以就用遷移方案試試把已經開發好的Spring Boot拉進來的場景吧!

第三步:輸入Spring Boot應用相關的資訊

點擊“完成”之后,可以在應用串列中看到剛剛完成創建的hello-world應用,

從上面的卡片元素中,我們可以看到,雖然只是簡單的一個創建應用操作,實際上做了非常多的事情,比如:分配環境、創建Git倉庫等,
應用開發
在云開發平臺中可以通過兩種方式進行開發:在線開發(瀏覽器中完成)、線下開發(傳統編輯器開發),
在線開發
點擊應用卡片中的“開發部署”,就會進入到下面的云開發頁面:

在左中位置可以看到該專案中已經有的檔案(主要一些鏡像構建配置、運行腳本和說明檔案等),
拿出我們以前的Spring Boot樣例(如果你沒玩過Spring Boot,可見免費系列教程),拖一個以前寫過的Spring Boot應用進來試試:

拖入代碼之后,根據云開發平臺的規范要求,需要對專案組織做一些修改,所以打開pom.xml,做如下配置修改:
- properties中添加applicationName配置,必須要有,不能省略
- build中添加finalName配置,必須與****applicationName一致,所以也可以用參考的方式
- 配置spring-boot-maven-plugin插件,打包格式使用ZIP、注意修改應用主類路徑

在線測驗
在完成了專案的匯入之后,我們嘗試運行該應用,
- 點擊底部的“終端”標簽
- 在命令列中輸入:mvn spring-boot:run

不出意外,終端將輸出類似下面的內容,應用成功啟動!

但是應用是啟動到云平臺上,并非本地,我們要如何驗證應用提供的介面呢?

點擊上面的“預覽”按鈕,然后在頂部彈出框中輸入想要暴露的埠號,比如:8080

根據提示,按回車之后,右下方會出現是否立即訪問的提示,直接點擊訪問就可以進入到可訪問的域名地址(該地址映射到了云平臺上的啟動地址)

代碼提交
在完成了上面的相關開發作業之后,通常我們要關注的就是代碼的提交,這時候就可以點擊左側的分支圖示,將修改代碼進行 commit

然后點擊左下方的箭頭,將代碼push進倉庫(關于Git相關的操作,一開始沒摸著頭腦,不是很流暢,期待后續有更好的用戶體驗改進)

本地開發
也許你可能覺得目前的在線編輯器還不夠強大,比如上面我們就看到對于pom.xml都還沒有高亮顯示,那么這個時候,你也可以選擇本地開發模式,只需要在應用卡片中點擊“代碼倉庫”,進入到下面的頁面中,將你本地的ssh密鑰輸入保存,然后就可以根據代碼倉庫將該應用的Git倉庫拉到本地進行開發了!

小建議:可以看到這里的倉庫名稱是按日期時間來構建的,如果使用在線開發還好,對這塊內容不敏感,但是如果想在本地開發,這樣的命名對于用戶來說就不那么友好,有時候會以為是個臨時目錄,期待后續會有所改進!
應用部署
在完成了應用開發,本地測驗之后,我們要做的就是應用交付與部署,所以,我們接下來試試這個平臺的部署功能!
在進行部署之前,我們需要先檢查一下當前環境是否具備部署條件,點擊應用卡片中的“環境管理”按鈕,可以看到如下頁面:

如果里面有依賴的云服務沒有開通,那么就點擊立即開通去逐個開通服務,不然后續的部署程序就無法正常完成,
如果你的應用中涉及到一些環境變數的使用,那么繼續點擊應用卡片中的“應用配置”來設定,

如果你的應用需要多人一起開發,那么在“成員管理”中可以用阿里云賬號把其他開發者加入進來,他們就也可以跟你一樣訪問你的應用代碼了,

準備就緒,繼續正題,繼續打開開發部署界面,點擊左側欄第一個按鈕,可以看到部署欄彈出:

選擇好要部署的環境(日常環境、預發環境、線上環境),先選擇第一個環境:日常環境,點擊部署,
關于環境,這里目測還不能對環境進行添加或修改,還是比較期待對環境有一定的靈活性配置,不論從名稱還是環境的數量上,不同的管理風格還是有很多種不同可能的,

點擊“繼續部署”,開始完成整個CI與CD程序:

從日志中的日志鏈接進入,還可以看到當前容器的構建情況:

如果出問題,那就點擊日志可以看到具體情況,比如:

如果你的服務之前都已經開通,專案配置也都沒問題,那么就會如下面這樣,完成部署,在部署完成后會輸出可訪問的域名,你可以用它來訪問你提供的介面來驗證應用是否啟動正確,

持續部署
上面我們完成了一個環境的部署,已經覆寫了CI和CD的基礎操作,下面來試一下持續部署(CD)部分的靈活性,
在部署欄中,選擇其他環境試試

可以看到有一個特殊的選項:將日常環境發布到預發環境,勾選之后就是把日常環境的鏡像部署到預發環境,符合CD的定義,如果不勾選就會重新編譯再部署,就又是一次完整的CI + CD程序了,

應用下線
下線操作很簡單,只需要在對應的應用卡片中找到對應環境的按鈕,如果是綠色狀態就是服務中,只需要點擊一下,就可以開始執行應用的下線操作了,

但是,目前下線有時候會碰到比較慢的情況,比如我在卡片中點了下線,卡片中狀態已經變為Offline,但是在開發部署頁面中中還無法重新部署,日志顯示還在卸載任務,

一些小建議
日志中的環境說明與環境定義匹配不上,建議有統一的描述與說明

xml沒有高亮,編輯有點吃力

開始部署之后,沒有手工終止的操作,如果操作失誤,就只能等著

本文首發:居然僅用瀏覽器,就完成了Spring Boot應用的開發與部署!,轉載請注明出處,
總結
云開發平臺這個新產品使用下來雖然還是有一些感覺不舒服的地方,但是總體使用體驗還是能解決不少開發效率問題的,尤其對于我這樣的獨立開發者(協作內容還弱一些,但是我不需要,哈哈),基本上從開發、測驗、上線等我最常用的功能都能夠覆寫,同時瀏覽器中的開發平臺是我比較喜歡的,雖然目前來說想較IDEA還是有很大的功能性差距,但是基礎功能已經具備,在開發流程上是沒有障礙的,但由于不需要配置運行環境、安裝編輯器等優點,開發作業就變得比較輕量化,
另外還有一點小發現,讓人有更多的聯想,在該平臺的選單中點擊右上角的頭條,點擊“賬號設定”,居然跳到了團隊協作軟體Teambition的阿里云版本:云效協作,所以,之前讓我覺得協作功能還比較弱的感受,可能在未來還會有更大的發揮空間,這兩者的結合,將來就可以從需求管理、研發管理、運維管理等一路都打通,但是具體會做成什么樣呢?期待這個平臺后續給我們展現他們的產品吧!
歡迎關注我的公眾號:程式猿DD,獲得獨家整理的學習資源、日常干貨及福利贈送,
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/46363.html
標籤:Java
上一篇:大資料簡介,技術體系分類整理
