項目連接nacos配置中心報錯:Client not connected, current status:STARTING的解決方案
一、 運行環(huán)境
nacos版本:2.2.3
mysql版本:5.7
采用了mysql作為持久化的數據庫,docker作為運行的環(huán)境
二、啟動nacos
采用 docker 的形式運行 mysql 和 nacos
起初運行 nacos 的 docker 命令:
docker run -d -e MODE=standalone -e PREFER_HOST_MODE=hostname -e SPRING_DATASOURCE_PLATFORM=mysql -e MYSQL_SERVICE_HOST=本機地址 -e MYSQL_SERVICE_PORT=3306 -e MYSQL_SERVICE_USER=root -e MYSQL_SERVICE_PASSWORD=123456 -e MYSQL_SERVICE_DB_NAME=nacos-config -p 8848:8848 --name nacos --restart=always nacos/nacos-server:latest
命令解釋:docker run:這是Docker的一個命令,用于從Docker鏡像創(chuàng)建并啟動一個容器。-d:這個選項告訴Docker在后臺運行容器,并返回容器ID。-e:這個選項用于設置環(huán)境變量。例如,-e MODE=standalone 設置了環(huán)境變量MODE的值為’standalone’。-p:這個選項用于端口映射,例如 -p 8848:8848 將主機的8848端口映射到容器的8848端口。--name:這個選項用于給容器命名,此處的名字為’nacos’。--restart=always:這是一個策略,表明如果容器退出,Docker應該總是嘗試重新啟動它。nacos/nacos-server:latest:這是要運行的Docker鏡像的名稱,其中’nacos/nacos-server’是鏡像的倉庫和名稱,'latest’是標簽,表示要使用的是最新的版本。
nacos可以正常啟動,然后也可以訪問web控制臺。但是事情還沒完
二、出現(xiàn)問題
然后我啟動項目連接 nacos 的時候報錯:Client not connected,current status:STARTING,StatusRuntimeException
一盆冷水從頭澆到腳底板。。。。/(ㄒoㄒ)/~~
經過多方查找,發(fā)現(xiàn) nacos 2.x.x 需要在啟動的時候多映射兩個端口:9848,9849
官方解釋如下:
Nacos2.0版本相比1.X新增了gRPC的通信方式,因此需要增加2個端口。新增端口是在配置的主端口(server.port)基礎上,進行一定偏移量自動生成。
| 端口 | 與主端口的偏移量 | 描述 |
|---|---|---|
| 9848 | 1000 | 客戶端gRPC請求服務端端口,用于客戶端向服務端發(fā)起連接和請求 |
| 9849 | 1001 | 服務端gRPC請求服務端端口,用于服務間同步等 |
更多解釋移步官網查看:https://nacos.io/zh-cn/docs/v2/upgrading/2.0.0-compatibility.html
所以修改后的 docker 啟動命令應該是:
docker run -d -e MODE=standalone -e PREFER_HOST_MODE=hostname -e SPRING_DATASOURCE_PLATFORM=mysql -e MYSQL_SERVICE_HOST=本機地址 -e MYSQL_SERVICE_PORT=3306 -e MYSQL_SERVICE_USER=root -e MYSQL_SERVICE_PASSWORD=123456 -e MYSQL_SERVICE_DB_NAME=nacos-config -p 8848:8848 -p 9848:9848 -p 9849:9849 --name nacos --restart=always nacos/nacos-server:latest
到此這篇關于項目連接nacos配置中心報錯:Client not connected, current status:STARTING的文章就介紹到這了,更多相關nacos配置中心報錯內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
基于springboot創(chuàng)建mybatis的完整步驟
MyBatis是一款優(yōu)秀的數據庫持久層框架,相比Hibernate我更喜歡使用MyBatis,看的到SQL還是讓人更安心點,這篇文章主要給大家介紹了關于基于springboot創(chuàng)建mybatis的完整步驟,需要的朋友可以參考下2024-03-03
spring boot + mybatis如何實現(xiàn)數據庫的讀寫分離
這篇文章主要給大家介紹了關于spring boot + mybatis如何實現(xiàn)數據庫的讀寫分離的相關資料,文中通過示例代碼介紹的非常詳細,對大家學習或者使用spring boot具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧2019-09-09
MyBatis自定義攔截器實現(xiàn)優(yōu)化SQL日志輸出
這篇文章主要介紹了優(yōu)化MyBatisPlus SQL日志輸出的方案,針對默認日志格式存在的不足,例如缺少時間、可讀性差、存儲成本高等,希望對大家有所幫助2026-03-03

