MySql教程

Docker 配置 nacos 持久化 使用MySQL8.0+

本文主要是介绍Docker 配置 nacos 持久化 使用MySQL8.0+,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

Docker 配置 nacos 持久化 使用MySQL8.0+

配置数据库文件

创建nacos_config 数据库
使用nacos中的nacos_config.sql 初始化数据库
数据库就不细说了直接nacos

拉取nacos镜像:

docker pull nacos/nacos-server

先不要运行nacos 注意之前运行过nacos镜像的要先删除nacos镜像

`查看nacos镜像配置文件(这个步骤不用做只是展示一下配置文件所需的配置信息)

//进入nacos镜像
docker exec -it nacos bash
//在conf文件中有application.properties文件
cd conf/
//查看文件内容
vim application.properties
——————————————————————————————————————————————————————————
spring.datasource.platform=${SPRING_DATASOURCE_PLATFORM:""}
nacos.cmdb.dumpTaskInterval=3600
nacos.cmdb.eventTaskInterval=10
nacos.cmdb.labelTaskInterval=300
nacos.cmdb.loadDataAtStart=false
db.num=${MYSQL_DATABASE_NUM:1}
db.url.0=jdbc:mysql://${MYSQL_SERVICE_HOST}:${MYSQL_SERVICE_PORT:3306}/${MYSQL_SERVICE_DB_NAME}?${MYSQL_SERVICE_DB_PARAM:characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true}
db.url.1=jdbc:mysql://${MYSQL_SERVICE_HOST}:${MYSQL_SERVICE_PORT:3306}/${MYSQL_SERVICE_DB_NAME}?${MYSQL_SERVICE_DB_PARAM:characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true}
db.user=${MYSQL_SERVICE_USER}
db.password=${MYSQL_SERVICE_PASSWORD}

看到文件中需要的mysql参数 在启动nacos时需要传入
注意:
docker启动nacos持久化最好不要去修改文件中的配置信息
这是网上普遍的方法修改配置文件
会出现找不到数据源的情况(千万不要修改成下面这样

spring.datasource.platform=mysql
db.num=1
db.url.0=jdbc:mysql://mysql:3306/nacos_config?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true
db.user=root
db.password=123456

我们直接在启动nacos时传入需要的参数即可不用修改任何文件

//启动语句解释

docker run -d --name nacos -p 8848:8848 
--restart=always 
-e JVM_XMS=256m 
-e JVM_XMX=256m 
-e MODE=standalone  // 单机模式启动

//对应application.properties中
//${SPRING_DATASOURCE_PLATFORM:""}
-e SPRING_DATASOURCE_PLATFORM=mysql 

//对应${MYSQL_SERVICE_HOST}
-e MYSQL_SERVICE_HOST=81.68.250.129 

//对应${MYSQL_SERVICE_PORT:3306}
-e MYSQL_SERVICE_PORT=3306 

//对应${MYSQL_SERVICE_DB_NAME}
-e MYSQL_SERVICE_DB_NAME=ry-config 

//对应${MYSQL_SERVICE_USER}
-e MYSQL_SERVICE_USER=root 

//对应${MYSQL_SERVICE_PASSWORD}
-e MYSQL_SERVICE_PASSWORD=root 

//对应${MYSQL_SERVICE_DB_PARAM:characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true}
-e MYSQL_SERVICE_DB_PARAM="characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC" 

nacos/nacos-server

完整启动语句

docker run -d --name nacos -p 8848:8848 --restart=always -e JVM_XMS=256m -e JVM_XMX=256m -e MODE=standalone -e SPRING_DATASOURCE_PLATFORM=mysql -e MYSQL_SERVICE_HOST=81.68.250.129 -e MYSQL_SERVICE_PORT=3306 -e MYSQL_SERVICE_DB_NAME=ry-config -e MYSQL_SERVICE_USER=root -e MYSQL_SERVICE_PASSWORD=root -e MYSQL_SERVICE_DB_PARAM="characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC" nacos/nacos-server

运行成功后打开 http://ip:8848/nacos 查看石佛那个持久化成功
添加一个配信信息查看数据库是否更新

这篇关于Docker 配置 nacos 持久化 使用MySQL8.0+的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!