這篇文章主要介紹“如何用Mac M1玩轉(zhuǎn)SpringCloud”,在日常操作中,相信很多人在如何用Mac M1玩轉(zhuǎn)SpringCloud問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”如何用Mac M1玩轉(zhuǎn)SpringCloud”的疑惑有所幫助!接下來,請跟著小編一起來學(xué)習(xí)吧!
讓客戶滿意是我們工作的目標(biāo),不斷超越客戶的期望值來自于我們對這個行業(yè)的熱愛。我們立志把好的技術(shù)通過有效、簡單的方式提供給客戶,將通過不懈努力成為客戶在信息化領(lǐng)域值得信任、有價值的長期合作伙伴,公司提供的服務(wù)項目有:域名與空間、網(wǎng)站空間、營銷軟件、網(wǎng)站建設(shè)、昭化網(wǎng)站維護(hù)、網(wǎng)站推廣。
本文主要內(nèi)容如下:
Nacos 作為配置中心和注冊中心,是必須要啟動的。
Nacos 下載地址:
https://github.com/alibaba/nacos/releases
最新版是 2.0.0-bugfix,我下載后,啟動成功了,但是無法訪問 Nacos 后臺,懷疑是本地環(huán)境有問題,所以換了一個低版本的 1.4.1,可以正常工作。另外我之前在 windows 機(jī)器上使用的 1.2.1 的版本,拷貝到 Mac 上也能正常運(yùn)行。
進(jìn)入 nacos 根目錄,執(zhí)行命令:
sh startup.sh -m standalone
執(zhí)行后的結(jié)果如下圖所示:
看到 nacos is starting withi standalone 就表示啟動成功。注意:啟動成功不代表正常運(yùn)行。
接下來訪問 nacos 的后臺管理系統(tǒng):
http://127.0.0.1:8848/nacos/#/login
賬號和密碼都是 nacos
。
添加 7 個微服務(wù)的命名空間:
新建命名空間時需要填寫的字段:
在配置列表添加幾個微服務(wù)的配置,目前保證 question 微服務(wù)和 thirdparty 微服務(wù)有配置即可。
如下圖所示,添加三個配置項:數(shù)據(jù)源,mybatis 配置,其他配置。詳細(xì)的配置參數(shù)參照這篇來配置:《SpringCloud 整合 Nacos 配置中心》。
主要是配置阿里云 OSS,用來保存圖片的。配置如下圖所示,key 需要大家到自己登陸到阿里云并申請 OSS 才能獲取到。參照這篇《SpringCloud 實戰(zhàn)項目-整合 OSS 對象存儲》。
創(chuàng)建數(shù)據(jù)庫、表、初始化數(shù)據(jù)這些工作都需要做,下載一個 MySQL 客戶端還是要方便點,然后找 Mac 上好用的客戶端軟件,下面是安裝軟件的艱辛歷程。
首先需要安裝 mac 版的 MySQL,下載地址:
https://dev.mysql.com/downloads/mysql/
選擇第一個就可以了,官網(wǎng)已經(jīng)提示該版本兼容 Mac M1
Packages for Catalina (10.15) are compatible with Big Sur (11)
下載后點擊安裝,安裝成功后,到系統(tǒng)偏好配置里面找到 MySQL,并單擊打開。
可以看到運(yùn)行的 MySQL 實例是 MySQL 8.0.23,且默認(rèn)開機(jī)運(yùn)行。
![]
我試過安裝 workbench 后,不能運(yùn)行。
安裝 Squel Pro 后,切換數(shù)據(jù)庫的時候程序崩潰。
經(jīng)過上面兩個軟件的崩潰后,我最后還是下載了試用版的 Navicat,可以免費(fèi)用 14 天,對于初始化數(shù)據(jù)足夠了。
下載地址:
http://www.navicat.com.cn/download/navicat-for-mysql
下載 macOS 的最新版 15,它是兼容 M1 芯片的。
然后需要執(zhí)行三個 SQL 文件,文件我已經(jīng)上傳到倉庫上了,
/passjava-platform/data/sql
依次執(zhí)行上面的三個文件后,會生成 6 個數(shù)據(jù)庫:一個系統(tǒng)數(shù)據(jù)庫,五個業(yè)務(wù)數(shù)據(jù)庫。
主要啟動 4 個核心服務(wù):網(wǎng)關(guān)微服務(wù)
、題目微服務(wù)
、第三方微服務(wù)
、系統(tǒng)管理微服務(wù)
。
架構(gòu)圖如下所示:
目前這幾個微服務(wù)已經(jīng)整合了 Nacos、OpenFeign、Gateway、統(tǒng)一異常處理、鏈路追蹤,redis 等。
啟動都是基于 IDEA 開發(fā)工具直接啟動的,所以需要下載 IDEA。
我安裝的 IDEA 是旗艦版 2020.3 的,試用版 30 天。大家可以下載免費(fèi)的社區(qū)版 Community,功能上也能滿足。
性能非???,我的 Windows 的配置:ThinkPad、 32 G 內(nèi)存、1T 固態(tài)硬盤,啟動一個微服務(wù)需要 10 秒以上,而 Mac 只需要 3 秒
。
官網(wǎng)下載地址:
https://www.jetbrains.com/idea/download/#section=mac
我的開源項目的后臺框架用的人人框架,它的主要功能就是后臺的登陸、系統(tǒng)管理功能,所以必須啟動 renren-fast
服務(wù)才能使用后臺管理。
大家可以啟動 RenrenApplication 這個 Service,啟動成功后,會提示以下信息:
renren-fast 服務(wù)暴露的端口是 8080,但是這個端口對前端是不可見的,前端 API 都是走網(wǎng)關(guān)的 8060 端口。將前端的請求轉(zhuǎn)發(fā)到 renren-fast 的 8060 端口,比如登陸請求。注意:一定要初始化完數(shù)據(jù)才能啟動成功。
網(wǎng)關(guān)微服務(wù)沒有什么特殊要求,我都配置好了,直接啟動就好了。另外如果遇到端口被占用的情況,可以通過如下命令解決:
lsof -i:8060kill -9 <進(jìn)程 id>
網(wǎng)關(guān)微服務(wù)暴露的端口是 8060,啟動后如下圖所示:
題目服務(wù)是核心模塊,很多實戰(zhàn)案例都是基于這個模塊進(jìn)行講解的。啟動服務(wù)之前,需要配置數(shù)據(jù)庫 MySQL 的連接。
文件路徑:/passjava-question/src/main/resources/application.yml spring: datasource: driver-class-name: com.mysql.cj.jdbc.Driver url: jdbc:mysql://127.0.0.1:3306/passjava_qms?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=GMT username: root password: xxx
另外我們也可以通過 nacos 來配置:
IDEA 工具中直接啟動就可以了,暴露的端口是 11000,啟動后如下圖所示:
用 postman 測試網(wǎng)關(guān)+題目微服務(wù)是否正常工作:
由于我的數(shù)據(jù)庫中是有數(shù)據(jù)的,所以會返回很多數(shù)據(jù),大家后面可自行添加數(shù)據(jù)。
這個第三方不是指另外一方的服務(wù),而是我把與第三方中間件交互的服務(wù)都?xì)w在這個服務(wù)里面了,比如對阿里云 OSS(對象存儲) 的操作。
這個服務(wù)的名字叫做:passjava-thirdparty
。另外需要注意,OSS 需要大家到阿里云官網(wǎng)申請,有免費(fèi)額度哦~配置方式可以參照這篇:《SpringCloud 實戰(zhàn)項目-整合 OSS 對象存儲》。
啟動成功后,如下圖所示:
Admin 管理后臺的技術(shù)選型還是用的 Vue,所以需要使用 npm 工具來安裝依賴。
使用 homebrew 安裝 npm
brew install npm
使用 homebrew 安裝 nvm
brew install nvm
默認(rèn)的 npm 使用的是官方的鏡像源,我們切換為國內(nèi)的淘寶鏡像源。
npm install -g cnpm --registry=https://registry.npm.taobao.org --verbose
倉庫里面并沒有將依賴包一起上傳,因為依賴包太大了,所以可在本地通過如下命令安裝依賴包,這個是一次性的,后面不需要再執(zhí)行。
進(jìn)入到 passjava-platform/passjava-portal 目錄,執(zhí)行如下命令來安裝依賴:
cnpm install
啟動前端portal
npm run dev
報錯,提示 Node Sass 不兼容當(dāng)前的系統(tǒng):
Node Sass does not yet support your current environment: OS X Unsupported architecture (arm64) with Unsupported runtime (88)
根據(jù)網(wǎng)上提供的解決方案,要先卸載 Node Saas
cnpm uninstall node-sass
但是又提示 chromedriver 安裝失敗(當(dāng)前操作系統(tǒng)不兼容),根據(jù)網(wǎng)上的解決方案,單獨(dú)安裝,但依舊提示 64 位系統(tǒng)不兼容,于是我把 package.json 文件中的 "chromedriver": "2.27.2" 刪掉了,問題迎刃而解!(最新的代碼已刪除該依賴項配置)
我們接著往下執(zhí)行:
先刪除之前安裝的 node_modules:
rm -rf ./node_modules/
再次執(zhí)行卸載 node-sass 的命令:
cnpm uninstall node-sass
卸載成功后,安裝 node-sass:
cnpm install node-sass --unsafe-perm --save-dev
重新安裝依賴:
cnpm install
在根目錄執(zhí)行如下命令就可以啟動后臺了:
npm run dev
啟動成功后,會自動打開瀏覽器,訪問的地址是 http://localhost:8081
賬號密碼都是 admin,輸入驗證碼即可登錄。注意:如果驗證碼沒有出現(xiàn),說明 RenrenApplication 微服務(wù)有異常,請查看 IDEA 中打印出的 log。
登錄后臺界面如下圖所示:
PassJava 后臺
首先需要給題目添加分類,在后臺點擊新增類型,如下圖所示:
注意:上傳圖片前需要啟動 thirdparty 微服務(wù),且 OSS 配置正確。
我的開源項目中要用 Elasticsearch 和 Kibana,且它們是運(yùn)行在 docker 上的,但目前這些鏡像在 M1 上還未適配。所以用不了 ES 和 Kibana,難過????
小程序的開發(fā)和測試在這里也不演示了, M1 上開發(fā)小程序完全沒問題~
到此,關(guān)于“如何用Mac M1玩轉(zhuǎn)SpringCloud”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識,請繼續(xù)關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編會繼續(xù)努力為大家?guī)砀鄬嵱玫奈恼拢?/p>
本文名稱:如何用MacM1玩轉(zhuǎn)SpringCloud
網(wǎng)站URL:http://weahome.cn/article/ijdeej.html