首先需要本地安装Nacos服务(Window和Linux都可以)
我这里用的是Linux的
老规则咱们登录docker 官网搜索nacos再到镜像执行拉取。我这里使用默认命令
docker pull nacos/nacos-server
创建本地的映射文件,custom.properties,
mkdir -p /root/nacos/init.d /root/nacos/logs
touch /root/nacos/init.d/custom.properties
在文件中写入以下配置
management.endpoints.web.exposure.include=*
创建容器并启动提供a、b两种方案
a、创建容器:使用standalone模式并开放8848端口,并映射配置文件和日志目录,数据库默认使用 Derby
docker run -d -p 8848:8848 -e MODE=standalone -e PREFER_HOST_MODE=hostname -v /root/nacos/init.d/custom.properties:/home/nacos/init.d/custom.properties -v /root/nacos/logs:/home/nacos/logs --restart always --name nacos nacos/nacos-server
启动容器,命令中:68a1f5afd98是容器id
docker start 68a1f5afd98
或者
docker start nacos
至此Nacos就安装好了
下面是SpringBoot 集成Nacos
首先创建一个什么都没有的SpringBoot项目并且引入 web启动器依赖 把 application.properties
换成 application.yml 依赖 Nacos(跟据自己使用的版本)
<dependency>
<groupId>com.alibaba.boot</groupId>
<artifactId>nacos-config-spring-boot-starter</artifactId>
<version>${nacos-config-spring-boot.version}</version>
</dependency>
<properties>
<java.version>1.8</java.version>
<nacos-config-spring-boot.version>0.2.1</nacos-config-spring-boot.version>
</properties>
配置文件连接Nacos
nacos:
config:
type: yaml
server-addr: 192.168.0.150:8848
context-path: nacos
data-id: test
auto-refresh: true
bootstrap:
enable: true
在这一步之前需要在Nacos的图形化页面配置列表中新建一个Data ID 为test的配置。
server:
port: 8080
nacos:
config:
server-addr: 192.168.0.150
spring:
application:
name: wtt-nacos
useLocalCache: 111
新建一个controller 层来测试一下有没有成功
@RestController
public class TestController {
@GetMapping("/hello")
public String hello(){
return "hello";
}
@NacosValue(value = "${useLocalCache:false}", autoRefreshed = true)
private String useLocalCache;
@GetMapping("/useLocalCache")
public String get() {
return useLocalCache;
}
}