系列文章目录
SpringCloud Alibaba - Nacos安装配置
前言
最近Eureka 注册中心越来越多被Nacos注册中心替代,以下是简单的docker安装及使用!!
以下是本篇文章正文内容
一、docker方式安装Nacos
1、docker 上下载nacos镜像
docker pull nacos
2、创建nacos挂载目录和文件,这里只挂载日志和配置文件
mkdir -p /mydata/nacos/logs/ #新建logs目录
mkdir -p /mydata/nacos/conf/
touch /mydata/nacos/conf/application.properties
vim /mydata/nacos/conf/application.properties #修改配置文件
3、配置文件加入配置,采用mysql存储
## 进入nacos 安装位置
docker exec -it nacos bash
vim application.properties
server.contextPath=/nacos
server.servlet.contextPath=/nacos
server.port=8848
spring.datasource.platform=mysql
db.num=1
db.url.0=jdbc:mysql://192.168.236.129:3306/medical-config?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true
db.user=root
db.password=root
nacos.cmdb.dumpTaskInterval=3600
nacos.cmdb.eventTaskInterval=10
nacos.cmdb.labelTaskInterval=300
nacos.cmdb.loadDataAtStart=false
management.metrics.export.elastic.enabled=false
management.metrics.export.influx.enabled=false
server.tomcat.accesslog.enabled=true
server.tomcat.accesslog.pattern=%h %l %u %t "%r" %s %b %D %{User-Agent}i
nacos.security.ignore.urls=/,/**/*.css,/**/*.js,/**/*.html,/**/*.map,/**/*.svg,/**/*.png,/**/*.ico,/console-fe/public/**,/v1/auth/login,/v1/console/health/**,/v1/cs/**,/v1/ns/**,/v1/cmdb/**,/actuator/**,/v1/console/server/**
nacos.naming.distro.taskDispatchThreadCount=1
nacos.naming.distro.taskDispatchPeriod=200
nacos.naming.distro.batchSyncKeyCount=1000
nacos.naming.distro.initDataRatio=0.9
nacos.naming.distro.syncRetryDelay=5000
nacos.naming.data.warmup=true
nacos.naming.expireInstance=true
4.启动容器 并挂载目录
和前面创建的目录一定要对应好
docker run --name nacos -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 TIME_ZONE='Asia/Shanghai' \
-v /mydata/nacos/logs:/mydata/nacos/logs \
-v /mydata/nacos/conf/application.properties:/mydata/nacos/conf/application.properties \
nacos/nacos-server
常用命令
# docker 启动关闭 nacos
docker stop nacos
docker start nacos
# 循环展示日志文件内容,在linux屏幕
cd log
tail -f nacos.log
# 浏览器查看 Nacos 界面,8848 端口
http://192.168.1.10:8848/nacos
账号:nacos
密码:nacos
二、Nacos配置中心使用
Nacos中的dataid的组成格式及与SpringBoot配置文件中的属性对应关系:
服务名称 - dev .yml || 服务名称 - test .properties
${spring.application.name}-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension}
三、项目中使用Nacos注册配置中心
<!-- SpringCloud Alibaba Nacos -->
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
</dependency>
<!-- SpringCloud Alibaba Nacos Config -->
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
</dependency>
# Spring
spring:
application:
# 应用名称
name: ${name}
profiles:
# 环境配置
active: dev
cloud:
nacos:
discovery:
# 服务注册地址
server-addr: http://${192.168.73.129}:8848
config:
# 配置中心地址
server-addr: http://${192.168.73.129}:8848
# 配置文件格式
file-extension: yml
# 共享配置
shared-configs:
- application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension}