项目连接nacos配置中心报错:Client not connected, current status:STARTING的解决方案

 更新时间:2024年03月30日 09:26:21   作者:码上那点事  
这篇文章主要介绍了项目连接nacos配置中心报错:Client not connected, current status:STARTING的解决方案,采用了mysql作为持久化的数据库,docker作为运行的环境,感兴趣的朋友跟随小编一起看看吧
(福利推荐:【腾讯云】服务器最新限时优惠活动,云服务器1核2G仅99元/年、2核4G仅768元/3年,立即抢购>>>:9i0i.cn/qcloud

(福利推荐:你还在原价购买阿里云服务器?现在阿里云0.8折限时抢购活动来啦!4核8G企业云服务器仅2998元/3年,立即抢购>>>:9i0i.cn/aliyun

一、 运行环境

nacos版本:2.2.3
mysql版本:5.7
采用了mysql作为持久化的数据库,docker作为运行的环境

二、启动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镜像创建并启动一个容器。
-d:这个选项告诉Docker在后台运行容器,并返回容器ID。
-e:这个选项用于设置环境变量。例如,-e MODE=standalone 设置了环境变量MODE的值为’standalone’。
-p:这个选项用于端口映射,例如 -p 8848:8848 将主机的8848端口映射到容器的8848端口。
--name:这个选项用于给容器命名,此处的名字为’nacos’。
--restart=always:这是一个策略,表明如果容器退出,Docker应该总是尝试重新启动它。
nacos/nacos-server:latest:这是要运行的Docker镜像的名称,其中’nacos/nacos-server’是镜像的仓库和名称,'latest’是标签,表示要使用的是最新的版本。
nacos可以正常启动,然后也可以访问web控制台。但是事情还没完

二、出现问题

然后我启动项目连接 nacos 的时候报错:Client not connected,current status:STARTING,StatusRuntimeException
一盆冷水从头浇到脚底板。。。。/(ㄒoㄒ)/~~
经过多方查找,发现 nacos 2.x.x 需要在启动的时候多映射两个端口:9848,9849
官方解释如下:
Nacos2.0版本相比1.X新增了gRPC的通信方式,因此需要增加2个端口。新增端口是在配置的主端口(server.port)基础上,进行一定偏移量自动生成。

端口与主端口的偏移量描述
98481000客户端gRPC请求服务端端口,用于客户端向服务端发起连接和请求
98491001服务端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配置中心报错内容请搜索程序员之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持程序员之家!

相关文章

  • 基于java构造方法Vector遍历元素源码分析

    基于java构造方法Vector遍历元素源码分析

    本篇文章是关于ava构造方法Vector源码分析系列文章,本文主要介绍了Vector遍历元素的源码分析,有需要的朋友可以借鉴参考下,希望可以有所帮助
    2021-09-09
  • spring?boot?Slf4j日志框架的体系结构详解

    spring?boot?Slf4j日志框架的体系结构详解

    在项目开发中记录日志是必做的一件事情,springboot内置了slf4j日志框架,下面这篇文章主要给大家介绍了关于spring?boot?Slf4j日志框架的体系结构,需要的朋友可以参考下
    2022-05-05
  • Java批量导出word压缩后的zip文件案例

    Java批量导出word压缩后的zip文件案例

    这篇文章主要介绍了Java批量导出word压缩后的zip文件案例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-10-10
  • Spring?Integration概述与怎么使用详解

    Spring?Integration概述与怎么使用详解

    公司项目需要用到spring integration,而网上关于spring integration的有价值的参考资料比较少,下面这篇文章主要给大家介绍了关于Spring?Integration概述与怎么使用的相关资料,需要的朋友可以参考下
    2023-02-02
  • 关于Spring?@Transactional事务传播机制详解

    关于Spring?@Transactional事务传播机制详解

    我们日常工作中极少使用事务传播级别,单纯只是使用事务和rollbackfor抛出异常来解决事务问题,但其实我们很多时候使用的是不正确的,或者说会造成事务粒度过大,本文详解一下事务传播级别,也让自己更好地处理事务问题,需要的朋友可以参考下
    2023-08-08
  • 浅谈SpringBoot内嵌Tomcat的实现原理解析

    浅谈SpringBoot内嵌Tomcat的实现原理解析

    这篇文章主要介绍了浅谈SpringBoot内嵌Tomcat的实现原理解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-12-12
  • springboot实现简单的消息对话的示例代码

    springboot实现简单的消息对话的示例代码

    本文主要介绍了springboot实现简单的消息对话的示例代码,可以使用WebSocket技术,WebSocket是一种在客户端和服务器之间提供实时双向通信的协议,具有一定的参考价值,感兴趣的可以了解一下
    2023-09-09
  • java文字转语音的实现示例

    java文字转语音的实现示例

    在Java中,我们可以使用第三方库来实现文字转语音的功能,本文主要介绍了java文字转语音的实现示例,选择jacob技术实现,具有一定的参考价值,感兴趣的可以了解一下
    2024-03-03
  • 详解Java的内存模型

    详解Java的内存模型

    本文更准确的说法应该是JVM的内存模型,但是这里又牵扯了一些其他的前置知识,主要是想从Java入手,从源头上梳理一遍整个Java底层运行的机制,中间会额外补充一些和题目无关的前置基础,导致主讲内存模型的篇幅所占的比例就不是那么绝对。
    2021-06-06
  • List对象去重和按照某个字段排序的实现方法

    List对象去重和按照某个字段排序的实现方法

    下面小编就为大家带来一篇List对象去重和按照某个字段排序的实现方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-05-05

最新评论

?


http://www.vxiaotou.com