前言:
因为了解到Eureka2.0及其部分组件闭源的消息, 项目架构选型时,注册中心组件选择了Nacos作为项目的注册中心,我负责搭建Nacos服务
本文所使用的是替换Eureka的Nacos,至于nacos是什么,想必看到本文的朋友应该都了解,不了解的可以看这里。
Nacos 致力于帮助您发现、配置和管理微服务。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据及流量管理。
Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。 Nacos 是构建以“服务”为中心的现代应用架构 (例如微服务范式、云原生范式) 的服务基础设施。
拉取nacos/nacos-server镜像
docker pull nacos/nacos-server
配置数据库
创建数据库: 数据库名可以随意配置,与 搭建nacos容器 MYSQL_MASTER_SERVICE_DB_NAME 参数一致即可
create database nacos_config
执行数据库SQL: [建表语句](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
具体配置参数参考: 官方文档
参数名 描述 可选项 默认值
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
ip:8848/nacos 默认用户名密码: nacos/nacos