环境准备:
CentOS 7.6.1810
MySQL 5.7
docker 19.03.4
拉取nacos/nacos-server镜像
docker pull nacos/nacos-server
配置数据库(MySQL)
-
创建存储
nacos
配置的数据库create database nacos_config
-
初始化数据库,导入初始化文件nacos-db.sql
创建nacos
容器
docker run -d
-e PREFER_HOST_MODE=hostname
-e MODE=standalone
-e SPRING_DATASOURCE_PLATFORM=mysql
-e MYSQL_MASTER_SERVICE_HOST=数据库ip
-e MYSQL_MASTER_SERVICE_PORT=数据库端口
-e MYSQL_MASTER_SERVICE_USER=用户名
-e MYSQL_MASTER_SERVICE_PASSWORD=密码
-e MYSQL_MASTER_SERVICE_DB_NAME=对应的数据库名
-e MYSQL_SLAVE_SERVICE_HOST=从数据库ip
-p 8848:8848
--name nacos-sa-mysql
--restart=always
nacos/nacos-server
具体配置参数参考官方文档,这里有个注意的是MYSQL_SLAVE_SERVICE_HOST
也需要配置,因为通过查看nacos
容器内的config/application.properties
文件,会发现这此值未设置默认值,所以会导致启动报错,容器启动不起来,这里可以与主数据库一致。
参数名 | 描述 | 可选项 | 默认值 |
---|---|---|---|
MODE | cluster模式/standalone模式 | cluster/standalone | cluster |
NACOS_SERVERS | nacos cluster地址 | eg. ip1,ip2,ip3 | |
PREFER_HOST_MODE | 是否支持hostname | hostname/ip | ip |
NACOS_SERVER_PORT | nacos服务器端口 | 8848 | |
NACOS_SERVER_IP | 多网卡下的自定义nacos服务器IP | ||
SPRING_DATASOURCE_PLATFORM | standalone 支持 mysql | mysql/empty | empty |
MYSQL_MASTER_SERVICE_HOST | mysql 主节点host | ||
MYSQL_MASTER_SERVICE_PORT | mysql 主节点端口 | 3306 | |
MYSQL_MASTER_SERVICE_DB_NAME | mysql 主节点数据库 | ||
MYSQL_MASTER_SERVICE_USER | 数据库用户名 | ||
MYSQL_MASTER_SERVICE_PASSWORD | 数据库密码 | ||
MYSQL_SLAVE_SERVICE_HOST | mysql从节点host | ||
MYSQL_SLAVE_SERVICE_PORT | mysql从节点端口 | 3306 | |
MYSQL_DATABASE_NUM | 数据库数量 | 2 | |
JVM_XMS | -Xms | 2g | |
JVM_XMX | -Xmx | 2g | |
JVM_XMN | -Xmn | 1g | |
JVM_MS | -XX:MetaspaceSize | 128m | |
JVM_MMS | -XX:MaxMetaspaceSize | 320m | |
NACOS_DEBUG | 开启远程调试 | y/n | n |
TOMCAT_ACCESSLOG_ENABLED | server.tomcat.accesslog.enabled | false |
访问nacos
默认用户名密码都为nacos
ip:8848/nacos
测试
-
进入控制台,并添加测试配置
-
查看数据库是否更新
数据库配置没有问题的话可以在表config_info
中看到刚才新增的配置信息 -
获取配置
curl -X GET "http://ip:8848/nacos/v1/cs/configs?dataId=test.yml&group=DEFAULT_GROUP"
即可获得配置
test=123
,