git上托管的代码如何部署在阿里云上_居然仅用浏览器搞定Spring Boot应用的开发与部署...
最近有幸試用了一下阿里云的一個新產品:云開發平臺,體驗一把全新的開發模式!雖然中間也碰到了一些問題,但整體的體驗透露著未來感,因為整個過程都不需要使用我們最常用的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,做如下配置修改:
在線測試
在完成了項目的導入之后,我們嘗試運行該應用。
不出意外,終端將輸出類似下面的內容,應用成功啟動!
但是應用是啟動到云平臺上,并非本地,我們要如何驗證應用提供的接口呢?
點擊上面的“預覽”按鈕,然后在頂部彈出框中輸入想要暴露的端口號,比如:8080
根據提示,按回車之后,右下方會出現是否立即訪問的提示,直接點擊訪問就可以進入到可訪問的域名地址(該地址映射到了云平臺上的啟動地址)
代碼提交
在完成了上面的相關開發工作之后,通常我們要關注的就是代碼的提交。這時候就可以點擊左側的分支圖標,將修改代碼進行 commit
然后點擊左下方的箭頭,將代碼push進倉庫(關于Git相關的操作,一開始沒摸著頭腦,不是很流暢,期待后續有更好的用戶體驗改進)
本地開發
也許你可能覺得目前的在線編輯器還不夠強大,比如上面我們就看到對于pom.xml都還沒有高亮顯示。那么這個時候,你也可以選擇本地開發模式。只需要在應用卡片中點擊“代碼倉庫”,進入到下面的頁面中,將你本地的ssh密鑰輸入保存,然后就可以根據代碼倉庫將該應用的Git倉庫拉到本地進行開發了!
小建議:可以看到這里的倉庫名稱是按日期時間來構建的,如果使用在線開發還好,對這塊內容不敏感。但是如果想在本地開發,這樣的命名對于用戶來說就不那么友好,有時候會以為是個臨時目錄,期待后續會有所改進!
應用部署
在完成了應用開發,本地測試之后,我們要做的就是應用交付與部署。所以,我們接下來試試這個平臺的部署功能!
在進行部署之前,我們需要先檢查一下當前環境是否具備部署條件。點擊應用卡片中的“環境管理”按鈕,可以看到如下頁面:
如果里面有依賴的云服務沒有開通,那么就點擊立即開通去逐個開通服務,不然后續的部署過程就無法正常完成。
如果你的應用中涉及到一些環境變量的使用,那么繼續點擊應用卡片中的“應用配置”來設置。
如果你的應用需要多人一起開發,那么在“成員管理”中可以用阿里云賬號把其他開發者加入進來,他們就也可以跟你一樣訪問你的應用代碼了。
準備就緒,繼續正題。繼續打開開發部署界面,點擊左側欄第一個按鈕,可以看到部署欄彈出:
選擇好要部署的環境(日常環境、預發環境、線上環境),先選擇第一個環境:日常環境,點擊部署。
關于環境,這里目測還不能對環境進行添加或修改。還是比較期待對環境有一定的靈活性配置,不論從名稱還是環境的數量上,不同的管理風格還是有很多種不同可能的。
點擊“繼續部署”,開始完成整個CI與CD過程:
從日志中的日志鏈接進入,還可以看到當前容器的構建情況:
如果出問題,那就點擊日志可以看到具體情況,比如:
如果你的服務之前都已經開通,項目配置也都沒問題,那么就會如下面這樣,完成部署。在部署完成后會輸出可訪問的域名,你可以用它來訪問你提供的接口來驗證應用是否啟動正確。
持續部署
上面我們完成了一個環境的部署,已經覆蓋了CI和CD的基礎操作。下面來試一下持續部署(CD)部分的靈活性。
在部署欄中,選擇其他環境試試
可以看到有一個特殊的選項:將日常環境發布到預發環境。勾選之后就是把日常環境的鏡像部署到預發環境,符合CD的定義,如果不勾選就會重新編譯再部署,就又是一次完整的CI + CD過程了。
應用下線
下線操作很簡單,只需要在對應的應用卡片中找到對應環境的按鈕,如果是綠色狀態就是服務中,只需要點擊一下,就可以開始執行應用的下線操作了。
但是,目前下線有時候會碰到比較慢的情況,比如我在卡片中點了下線,卡片中狀態已經變為Offline,但是在開發部署頁面中中還無法重新部署,日志顯示還在卸載任務。
一些小建議
日志中的環境說明與環境定義匹配不上,建議有統一的描述與說明
xml沒有高亮,編輯有點吃力
開始部署之后,沒有手工終止的操作,如果操作失誤,就只能等著
本文首發:http://blog.didispace.com/aliyunkaifa-spring-boot/,轉載請注明出處。
總結
云開發平臺這個新產品使用下來雖然還是有一些感覺不舒服的地方,但是總體使用體驗還是能解決不少開發效率問題的,尤其對于我這樣的獨立開發者(協作內容還弱一些,但是我不需要,哈哈)。基本上從開發、測試、上線等我最常用的功能都能夠覆蓋,同時瀏覽器中的開發平臺是我比較喜歡的,雖然目前來說想較IDEA還是有很大的功能性差距,但是基礎功能已經具備,在開發流程上是沒有障礙的。但由于不需要配置運行環境、安裝編輯器等優點,開發工作就變得比較輕量化。
另外還有一點小發現,讓人有更多的聯想。在該平臺的菜單中點擊右上角的頭條,點擊“賬號設置”,居然跳到了團隊協作軟件Teambition的阿里云版本:云效協作。所以,之前讓我覺得協作功能還比較弱的感受,可能在未來還會有更大的發揮空間。這兩者的結合,將來就可以從需求管理、研發管理、運維管理等一路都打通,但是具體會做成什么樣呢?期待這個平臺后續給我們展現他們的產品吧!
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的git上托管的代码如何部署在阿里云上_居然仅用浏览器搞定Spring Boot应用的开发与部署...的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 最大连续子数组和 动态规划_剑指Offe
- 下一篇: iPad mini怎么定时关机?