若依cloud项目部署时遇到的nacos方面的问题

一. nacos运行报错如下:
Server check fail, please check server xxx.xxx.xxx.xxx ,port 9848 is available , error = {}

原因:
在这里插入图片描述
因此docker运行nacos容器需要放开三个端口8848、9848、9849,例如:

docker docker pull nacos/nacos-server

PS:这是拉取最新的nacos版本,如果需要拉取别的版本可以加:版本号(如:docker pull nacos/nacos-server:v2.3.1)

docker run \
--name nacos2.3.1 -d \
-p 8848:8848 \
-p 9848:9848 \
-p 9849:9849 \
--privileged=true \
--restart=always \
-e JVM_XMS=256m \
-e JVM_XMX=256m \
-e MODE=standalone \
-e PREFER_HOST_MODE=hostname \
nacos/nacos-server:v2.3.1

二.若依cloud项目启动报错:
Error creating bean with name ‘sysConfigServiceImpl’: Invocation of init method failed

原因:nacos上的配置文件未正常配置,可以先登录到nacos控制台,在配置管理一栏看是否是空白的,是空白的则没有配置正确

假如是docker下载的nacos,配置nacos持久化,修改conf/application.properties文件,增加支持mysql数据源配置:
1.进入 Nacos Docker 容器:
使用以下命令进入正在运行的 Nacos 容器:

docker exec -it nacos /bin/bash

2.找到 application.properties 文件:
默认情况下,application.properties 文件位于 Nacos 容器的 /home/nacos/conf/ 目录下。你可以使用 ls 命令确认其位置:

ls /home/nacos/conf/

3.编辑 application.properties 文件:
使用 vi 或其他文本编辑器打开 application.properties 文件:

vi /home/nacos/conf/application.properties

4.在文件中添加或修改以下 MySQL 数据源配置:

spring.datasource.platform=mysql
db.num=1
db.url.0=jdbc:mysql://<MYSQL_HOST>:<MYSQL_PORT>/<NACOS_DB_NAME>?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true
db.user=<MYSQL_USER>
db.password=<MYSQL_PASSWORD>

请将 <MYSQL_HOST>, <MYSQL_PORT>, <NACOS_DB_NAME>, <MYSQL_USER>, 和 <MYSQL_PASSWORD> 替换为你自己的 MySQL 数据库信息。例如:

# db mysql
spring.datasource.platform=mysql
db.num=1
db.url.0=jdbc:mysql://localhost:3306/ry-config?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC
db.user=root
db.password=password

注意:spring.datasource.platform=mysql可能在application.properties被注释需放开,其他语句也有,只需对应修改即可

5.重启 Nacos Docker 容器:
完成配置后,退出编辑器并重启 Nacos 容器以使配置生效:

exit
docker restart nacos

验证配置:
重启后,你可以通过访问 Nacos 的管理界面或使用 Nacos 客户端来验证配置是否成功。确保 Nacos 能够连接到 MySQL 数据库,并且数据能够正确持久化。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值