SpringBoot項(xiàng)目微信云托管入門部署實(shí)踐
微信云托管本身是一個服務(wù)器,里面的軟件都已經(jīng)配置好了,直接使用即可,適用于一些簡單部署的項(xiàng)目。直接把項(xiàng)目直接上傳到服務(wù)器即可。無需各種繁瑣的軟件配置和打包,微信云托管統(tǒng)統(tǒng)給你搞定。而且系統(tǒng)會根據(jù)使用量計(jì)費(fèi),對于一些使用量比較少的系統(tǒng),也是很劃算的。本文從一個 Spring Boot 項(xiàng)目簡單部署云托管項(xiàng)目。
云托管簡介
在 官網(wǎng) 顯示微信云托管的幾個優(yōu)勢:
- 開箱即用
- 支持多種后端語言
- 自動擴(kuò)容
云托管相對傳統(tǒng)項(xiàng)目的優(yōu)勢
發(fā)布一個簡單的 demo 在linux服務(wù)器
- 創(chuàng)建 springboot 項(xiàng)目
- 將 springboot 項(xiàng)目打成war 包
- 在 linux 服務(wù)器安裝 jdk、tomcat,阿里云或者騰訊云開放對應(yīng)的端口
- 安裝 mysql
- 執(zhí)行sql 語句
- 上傳 war 包到 tomcat 服務(wù)器
對應(yīng)的云托管
- 創(chuàng)建 springboot 項(xiàng)目
- 在云托管數(shù)據(jù)庫執(zhí)行 sql 語句
- 上傳springboot文件
云托管直接上傳項(xiàng)目文件即可。
入門
進(jìn)入控制臺后,找到 服務(wù)列表 -> 新建服務(wù)
寫好服務(wù)名稱后,選擇不同方式上傳代碼,這里有 github
、gitlab
、gitee
、手動上傳代碼包
等等。我這里選擇了使用手動上傳代碼包。
此處上傳的代碼和Spring Boot項(xiàng)目區(qū)別在于這里上傳的代碼需要添加額外的兩個文件, Dockerfile
和 settings.xml
,文件在 https://github.com/WeixinCloud/wxcloudrun-springboot 可以找到:
Dockerfile
Dockerfile 配置 docker
環(huán)境,里面主要命令是項(xiàng)目打包、運(yùn)行。
這里的打包是打成一個 jar
包,如果項(xiàng)目是原來打成一個 war 包,要改成打成 jar 包。
需要將 pom.xml
<packaging>jar</packaging>
改成
<packaging>war</packaging>
Dockerfile 還有打包和運(yùn)行的命令,修改下面用紅框框起來的數(shù)據(jù),改成打包的名稱:
settings.xml
settings.xml是 maven 打包的依賴項(xiàng)配置。默認(rèn)使用騰訊云maven依賴,不需要改動配置。
為了減少項(xiàng)目線上部署調(diào)試時間,先在本地執(zhí)行打包命令,確保打包成功:
mvn clean package
如果打包成功,直接上傳文件,這里為了減少上傳時間,可以先對文件進(jìn)行壓縮。
上面的端口要和springboot里面配置的端口要一致,最好在 application.yml
配置文件設(shè)置默認(rèn)端口80,省去每次發(fā)布項(xiàng)目都要修改端口的麻煩。
上傳成功之后,點(diǎn)擊發(fā)布。發(fā)布成功之后訪問公網(wǎng)地址。如下圖所示:
走完一遍流程,發(fā)現(xiàn)云托管有幾個不足的地方:
- 發(fā)布時間大概要花7,8分鐘,主要是花在下載 maven 依賴的時間比較多。
- 如果
maven
依賴在本地配置,就不能在云托管使用依賴。
以上兩個問題,如果使用上傳打包好的 jar
包,就能解決這個問題,期待后續(xù)能支持上傳 jar
包的選項(xiàng)。
總結(jié)
- 如果部署一些不太復(fù)雜的項(xiàng)目,微信云托管是一個不錯的選擇,可以根據(jù)配置使用,自動擴(kuò)容。
- Spring Boot 添加兩個文件
Dockerfile
和settings.xml
。- Dockerfile 需要修改打包名稱和運(yùn)行名稱
- settings.xml 不用修改
- Spring Boot 需要改成
jar
包的打包方式。 - 項(xiàng)目端口最好配置成默認(rèn)端口
80
。
到此這篇關(guān)于SpringBoot項(xiàng)目微信云托管入門部署實(shí)踐的文章就介紹到這了,更多相關(guān)SpringBoot項(xiàng)目微信云托管內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- springboot項(xiàng)目打成war包部署到tomcat遇到的一些問題
- 運(yùn)用springboot搭建并部署web項(xiàng)目的示例
- Linux下部署springboot項(xiàng)目的方法步驟
- 利用Dockerfile部署SpringBoot項(xiàng)目的方法
- 詳解springboot項(xiàng)目docker部署實(shí)踐
- SpringBoot 創(chuàng)建web項(xiàng)目并部署到外部Tomcat
- SpringBoot項(xiàng)目在IntelliJ IDEA中如何實(shí)現(xiàn)熱部署
- SpringBoot中maven項(xiàng)目打成war包部署在linux服務(wù)器上的方法
相關(guān)文章
SpringBoot 項(xiàng)目添加 MDC 日志鏈路追蹤的執(zhí)行流程
日志鏈路追蹤就是將一個標(biāo)志跨線程進(jìn)行傳遞,在一般的小項(xiàng)目中也就是在你新起一個線程的時候,或者使用線程池執(zhí)行任務(wù)的時候會用到,比如追蹤一個用戶請求的完整執(zhí)行流程,本文給大家介紹SpringBoot MDC 日志鏈路追蹤的代碼,感興趣的朋友一起看看吧2021-06-06Java中finally和return的關(guān)系實(shí)例解析
這篇文章主要介紹了Java中finally和return的關(guān)系實(shí)例解析,總結(jié)了二者的關(guān)系,然后分享了相關(guān)代碼示例,小編覺得還是挺不錯的,具有一定借鑒價值,需要的朋友可以參考下2018-02-02實(shí)例解析觀察者模式及其在Java設(shè)計(jì)模式開發(fā)中的運(yùn)用
觀察者模式定義了一種一對多的依賴關(guān)系,讓多個觀察者對象同時監(jiān)聽某一個主題對象,這個主題對象在狀態(tài)上發(fā)生變化時,會通知所有觀察者對象,使它們能夠自動更新自己.下面就以實(shí)例解析觀察者模式及其在Java設(shè)計(jì)模式開發(fā)中的運(yùn)用2016-05-05Java IO中字節(jié)流復(fù)制圖片實(shí)現(xiàn)代碼
這篇文章主要介紹了Java IO中字節(jié)流復(fù)制圖片實(shí)現(xiàn)代碼的相關(guān)資料,需要的朋友可以參考下2017-04-04獲取Java加載器和類完整結(jié)構(gòu)的方法分享
這篇文章主要為大家詳細(xì)介紹了獲取Java加載器和類完整結(jié)構(gòu)的方法,文中的示例代碼講解詳細(xì),對我們學(xué)習(xí)Java有一定的幫助,需要的可以參考一下2022-12-12Java返回文件時為圖片或pdf等設(shè)置在線預(yù)覽或下載功能
這篇文章主要介紹了Java返回文件時為圖片或pdf等設(shè)置在線預(yù)覽或下載功能,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友參考下吧2024-01-01java中instanceof 關(guān)鍵字作用和實(shí)際用途詳解
這篇文章主要介紹了java中instanceof 關(guān)鍵字作用和實(shí)際用途,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-04-04Java編程中利用InetAddress類確定特殊IP地址的方法
這篇文章主要介紹了Java編程中利用InetAddress類確定特殊IP地址的方法,InetAddress類是Java網(wǎng)絡(luò)編程中一個相當(dāng)實(shí)用的類,需要的朋友可以參考下2015-11-11