Intellij IDEA 部署 Spring Boot / Spring Cloud 應用到阿裏雲
本地開發
無論是編寫雲端運行的,還是編寫本地運行的 Spring Cloud 或 Spring Boot 應用程序,代碼編寫本身並沒有特別大的變化,因此本文采用一個極其基礎的樣例《在 Web 頁面打印 HelloWorld 的 Spring Boot 》為例,通過啟動內置的 Tomcat 容器,處理 HTTP 請求,在 Web 頁面上打印一串“Hello World”的文案。
內嵌的 Tomcat 監聽來自根目錄的請求
package com.aliyun.toolkit.demo; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; @RestController public class HelloWorldController { @RequestMapping("/") public String sayHello() { return "Alibaba Cloud Toolkit: Hello,World."; } }
Spring Boot 的啟動類
package com.aliyun.toolkit.demo; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; @SpringBootApplication public class Startup { public static void main(String[] args) { SpringApplication.run(Startup.class,args); } }
SpringBoot Demo 工程下載
上述代碼就是一個標準的 Spring Boot 工程。
安裝插件
阿裏雲提供了基於 Intellij IDEA 的插件,以方便開發人員能夠高效的將本地 IDE 中編寫的應用程序,極速部署到 ECS中去。
插件主頁:https://www.aliyun.com/product/cloudtoolkit
阿裏雲的這個 Intellij IDEA 插件的安裝過程,和普通的插件大同小異,這裏不再贅述,讀者請自行安裝。
配置插件首選項
安裝完插件之後,按照如下路徑進行首選項配置
頂部菜單 - Tools - Alibaba Cloud Toolkit - Preferences
出現如下界面,配置阿裏雲賬號的 AK 和 SK,即可完成首選項配置。(如果是子賬號,則填寫子賬號的 AK 和 SK)
部署
在 Intellij IDEA 中,鼠標右鍵項目工程名,在出現的菜單中點擊 Alibaba Cloud - Deploy to ECS...,可會出現如下部署窗口:
設置部署參數,然後單擊 Run,即可執行部署。
部署參數說明
-
Deploy File:部署文件包含兩種方式。
- Maven Build:如果當前工程采用 Maven 構建,可以使用 Cloud Toolkit 直接構建並部署。
- Upload File:如果當前工程並非采用 Maven 構建,或者本地已經存在打包好的部署文件,可以選擇並直接上傳本地的部署文件。
-
Target Deploy ECS:在下拉列表中選擇地域,然後在地域中選擇要部署的 ECS 實例。
-
Deploy Location :輸入在 ECS 上部署路徑,如 /root/act_springboot
- Commond:輸入應用啟動命令,如 sh /root/act_springboot/restart.sh。表示在完成應用包的部署後,需要執行的命令 —— 對於 Spring Boot 程序而言,通常是一句 java -jar XXXX.jar 的啟動命令。
/root/act_springboot/restart.sh 內容如下:
source ~/.bash_profile
killall java
nohup java -jar /root/springbootdemo/springbootdemo-0.0.1-SNAPSHOT.jar > nohup.log 2>&1 &
Intellij IDEA 部署 Spring Boot / Spring Cloud 應用到阿裏雲