配置文件迁移到nacos以及踩坑

本文详细记录了将微服务配置文件从本地迁移到Nacos的步骤,包括停止旧Nacos实例,使用Docker部署新Nacos,设置环境变量连接MySQL数据库,并在数据库中创建相应配置。在遇到行尾注释导致的问题后,提醒读者注意配置文件的正确格式,确保Nacos能正确解析配置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

首先记录一下将配置文件迁移到Nacos的过程

配置文件迁移到nacos

当微服务模块过多配置文件散落在各个模块不好管理,可以迁移到Nacos进行管理

  1. 删除原有的nacos

    1. docker stop nacos

    2. docker rm nacos

    3. docker run -d  \
      -e MODE=standalone  \
      -e PREFER_HOST_MODE=hostname  \
      -e SPRING_DATASOURCE_PLATFORM=mysql  \
      -e MYSQL_SERVICE_HOST=服务器Ip\ 
      -e MYSQL_SERVICE_PORT=3306  \
      -e MYSQL_SERVICE_USER=root  \
      -e MYSQL_SERVICE_PASSWORD=root  \
      -e MYSQL_SERVICE_DB_NAME=nacos  \
      -p 8848:8848  \
      --name nacos  \
      --restart=always  \
      nacos/nacos-server:1.4.1
      
      
    4. 在数据库新建配置的数据库 可见上面代码 为nacos, 导入sql脚本

    5. 重新访问nacos

    6. 查看nacos 日期 docker log nacos 如果有端口号8848说明启动成功

    7. 访问 (img-ipymH1Xw-1662732465514)(C:\Users\caituxinchu\AppData\Roaming\Typora\typora-user-images\image-20220909155129557.png)]
      问题:
      当我这样写注释 (行尾注释)

在这里插入图片描述

在这里插入图片描述
原因:
在配置文件中写行尾注释会被识别为配置文件的字符串

Spring Cloud Admin是一个轻量级的服务发现和配置中心管理工具,它允许用户集中管理和推送配置到所有服务实例上,包括将配置文件集成到Nacos这样的外部配置中心。以下是将Spring Cloud Admin与Nacos结合的步骤: 1. **添加依赖**:首先在你的Spring Boot项目中添加对Spring Cloud Config、Spring Cloud Alibaba Nacos Starter和Spring Cloud Admin的依赖。 ```xml <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-config</artifactId> </dependency> <dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spring-cloud-alibaba-nacos-config</artifactId> </dependency> <dependency> <groupId>io.github.openfeign</groupId> <artifactId>spring-cloud-admin-client</artifactId> </dependency> ``` 2. **配置Nacos Config客户端**:在application.yml或application.properties中配置Nacos Config的相关信息,如Nacos地址、命名空间等。 ```yaml spring: cloud: config: server: nacos: address: http://localhost:8848 namespace: your-namespace username: admin password: password ``` 3. **启用Admin服务**:在admin模块的配置中,设置使用Nacos作为配置服务器。 4. **注入Admin客户端**:在需要访问配置的地方,通过@Autowired自动装配ConfigClient bean。 5. **获取配置**:通过`ConfigClientProperties`接口可以获取应用的配置信息,并实时更新。 例如,你可以这样获取配置: ```java @Autowired private ConfigClientProperties config; String myProperty = config.get("my.property"); ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值