nacos 异常解决
现象
容器启动nacos 成功。控制台可以访问,但是在项目中连接注册中心,无法连接。
报错信息
Caused by: com.alibaba.nacos.api.exception.NacosException:
Client not connected, current status:STARTING
原因:
容器启动时,只开了8848端口。
我使用的是Nacos2.0。
Nacos2.0版本新增了gRPC的通信方式,除了8848端口外,还需要再多开放俩个端口:
(与主端口偏移量1000,1001)
9848: 8848+1000
9849: 8848+1001
解决:
端口增加:-p 9848:9848 和 -p 9849:9849
docker run -itd \
-e PREFER_HOST_MODE=ip \
-e MODE=standalone \
-e SPRING_DATASOURCE_PLATFORM=mysql \
-e MYSQL_SERVICE_HOST=127.0.0.1\
-e MYSQL_SERVICE_PORT=3306 \
-e MYSQL_SERVICE_DB_NAME=nacos \
-e MYSQL_SERVICE_USER=nacos \
-e MYSQL_SERVICE_PASSWORD=123456 \
-p 8848:8848 \
-p 9848:9848 \
-p 9849:9849 \
--name nacos \
--restart=always \
nacos/nacos-server