这几天我们部门的项目都要集成nacos的配置中心,把对应的配置文件都要放到nacos上进行存储,方便实时刷新。 之前我们的springcloud项目已经统一做了迁移,因为给出了迁移文档。但是我们有一个项目一直搁置了,就是开源的xxl-job项目, 由于我们定时任务一直用的都是xxl-job,并且在源码基础上做过一些小的改动(前边文章里介绍过),这个项目没迁的原因,一是懒,二是它是一个springboot项目和常规的springcloud项目迁移还不太一样,springcloud迁移是通过bootstrap.yml文件指定,我当时知道两者方式不太一样, 今天终于有时间把它也迁移了一下。下面介绍一下迁移步骤。
1. 要有一个nacos服务,就像类似redis,mysql, mq, 你得先下载一个软件把它启动了。 这个直接上官网下载即可,并且按照步骤,修改自己的数据库配置等。
2. 项目集成,首先就是要依赖jar, 在springboot的配置文件中加入依赖。
<!-- nacos -->
<dependency>
<groupId>com.alibaba.boot</groupId>
<artifactId>nacos-config-spring-boot-starter</artifactId>
<version>${nacos-config-spring-boot.version}</version>
</dependency>
这里版本我用的是 0.2.7
3. 就是把我们以前的配置文件,存到nacos服务上,第一步启动好之后,通过地址是可以访问到nacos的一个后台管理页面的,默认是: ip:8848
添加一个配置,写上一个DataaId, 最好使用 spring.application.name-spring.profiles.active.properties/yml 的格式,方便我们后续指定不同的环境变量
对应的配置格式,你是yml就选yaml, properties就选properties,然后把你之前的配置文件里的内容copy到内容中,点击发布即可。
4. 修改项目的配置文件,在我们原来的项目中修改配置文件,当然这里的配置文件就不需要大段的内容了,只需要配置nacos对应信息即可。
application.properties
spring.application.name=your application name
spring.profiles.active=dev
# nacos
nacos.config.bootstrap.enable=true
nacos.config.type=properties
nacos.config.auto-refresh=true
nacos.config.data-id=${spring.application.name}-${spring.profiles.active}.properties
注意: 这里的data-id非常重要,一定要和你在nacos上配置的文件名一模一样才行
application-dev.properties:
# nacos
nacos.config.username=your username
nacos.config.password=your password
nacos.config.server-addr=your address
nacos.config.group=your group
nacos.config.namespace=your namespace
namespace位置:
然后启动项目就行了。