阿裡SpringBoot應用自動化部署實現IDEA版Jenkins

之前分享過一些使用Jenkins進行自動化部署的技巧 ,最近發現一款阿裡出品的IDEA插件CloudToolkit,不僅支持直接打包應用部署到遠程服務器上,而且還能當終端工具使用。試用瞭一把這個插件,非常不錯,推薦給大傢!裝上這個插件,IDEA一站式開發又近瞭一步!

SpringBoot實戰電商項目mall(50k+star)地址:github.com/macrozheng/…

CloudToolkit簡介

CloudToolkit是阿裡出品的一款IDEA插件,通過它我們可以更方便地實現自動化部署,其內置的終端工具和文件上傳功能,即使用來管理服務器也非常方便!這款IDEA插件不僅功能強大,而且完全免費!

安裝

CloudToolkit的安裝是非常簡單的,直接在IDEA的插件市場中搜索Cloud Toolkit然後進行安裝即可。

使用

接下來我們就體驗下CloudToolkit的自動化部署功能,以SpringBoot應用打包部署到Docker環境為例,看看它是不是夠好用。

自動化部署

  • 插件安裝完成後,打開左側面板,右鍵Host圖標我們就可以添加服務器的連接信息瞭,實現自動化部署之前需要先配置好連接信息;

  • 一般情況下我們如果想部署本地SpringBoot應用到Docker環境需要經過如下步驟,使用CloudToolkit我們隻要配置好流程即可,這些操作它都會幫我們自動完成;

  • 首先準備好打包應用鏡像需要的Dockerfile文件;
# 該鏡像需要依賴的基礎鏡像
FROM java:8
# 將當前目錄下的jar包復制到docker容器的/目錄下
ADD mall-tiny-deploy-1.0-SNAPSHOT.jar /mall-tiny-deploy-1.0-SNAPSHOT.jar
# 聲明服務運行在8088端口
EXPOSE 8088
# 指定docker容器啟動時運行jar包
ENTRYPOINT ["java", "-jar","/mall-tiny-deploy-1.0-SNAPSHOT.jar"]
# 指定維護者的名字
MAINTAINER macrozheng
  • 再準備好可以自動打包應用鏡像、創建並運行容器的腳本run.sh,這兩個腳本的具體使用可以參考使用Jenkins進行自動化部署的技巧 ;
#!/usr/bin/env bash
# 定義應用組名
group_name='mall-tiny'
# 定義應用名稱
app_name='mall-tiny-deploy'
# 定義應用版本
app_version='1.0-SNAPSHOT'
# 定義應用環境
profile_active='prod'
echo '----copy jar----'
docker stop ${app_name}
echo '----stop container----'
docker rm ${app_name}
echo '----rm container----'
docker rmi ${group_name}/${app_name}:${app_version}
echo '----rm image----'
# 打包編譯docker鏡像
docker build -t ${group_name}/${app_name}:${app_version} .
echo '----build image----'
docker run -p 8088:8088 --name ${app_name} \
--link mysql:db \
-e 'spring.profiles.active'=${profile_active} \
-e TZ="Asia/Shanghai" \
-v /etc/localtime:/etc/localtime \
-v /mydata/app/${app_name}/logs:/var/logs \
-d ${group_name}/${app_name}:${app_version}
echo '----start container----'
  • 將這兩個文件上傳到Linux服務器上,給run.sh添加可執行權限;

  • 右鍵需要部署的項目,點擊Deploy to Host

  • 然後選擇把Maven打包的Jar包上傳到指定目錄,上傳完成後執行run.sh腳本;

  • 接下來編輯下Maven構建的目標,隻打包mall-tiny-deploy模塊即可;

  • 然後修改高級設置,配置下查看容器日志的命令;

  • 最後運行該配置,運行完成後即可直接查看應用運行日志瞭;

  • 打開應用的Swagger頁面查看下,發現已經可以正常訪問瞭,訪問地址:http://192.168.3.105:8088/swagger-ui/

常用功能

  • 當然CloudToolkit的功能遠不止於此,它內置瞭終端工具,在IDEA中管理Linux服務器,用它就夠瞭,直接通過底部面板,點擊終端按鈕即可打開;

  • 體驗瞭一把這個終端工具,提示還挺全的,這下還要啥Xshell?

  • 通過上傳功能可以上傳文件,WinSCP也用不著瞭!

總結

體驗瞭一把阿裡出品的CloudToolkit,做好配置以後,基本可以實現一鍵部署應用到遠程服務器,說它是IDEA版的Jenkins也不為過!其內置的終端工具也是非常好用的,強烈推薦大傢嘗試一波!

項目源碼地址 github.com/macrozheng/…

以上就是阿裡SpringBoot應用自動化部署實現IDEA版Jenkins的詳細內容,更多關於SpringBoot自動化部署的資料請關註WalkonNet其它相關文章!

推薦閱讀: