docker搭建nacos集群并用mysql做持久化

1、首先需要准备四台机器,其中三台用于集群构建,IP地址分别为:IP1,IP2,IP3,一台用于mysql,IP地址为IP4
2、需要找到另外一台机器搭建mysql,用于持久化配置,并且新建数据库nacos_config,用于存放nacos的配置
3、到网站 nacos下载地址 上下载对应版本的nacos
4、找到下载文件的sql文件,运行sql文件进行建表

在这里插入图片描述
构建完的表结构
在这里插入图片描述

5、在三台机器上分别拉取镜像

docker pull nacos/nacos-server:v2.2.1

6、然后构建运行容器
6.1 第一台机器

docker run -d -p 8848:8848 -p 9848:9848 -p 9849:9849 -e JVM_XMS=128m -e JVM_XMX=128m -e JVM_XMN=128m -e MODE=cluster -e PREFER_HOST_MODE=hostname -e NACOS_SERVER_PORT=8848 -e NACOS_SERVERS="IP1:8848 IP2:8848 IP3:8848" -e SPRING_DATASOURCE_PLATFORM=mysql -e MYSQL_SERVICE_HOST=IP4 -e MYSQL_SERVICE_PORT=3306 -e MYSQL_SERVICE_USER=root -e MYSQL_SERVICE_PASSWORD=xxxxxx -e MYSQL_SERVICE_DB_NAME=nacos_config -e MYSQL_DATABASE_NUM=1 -e MYSQL_SERVICE_DB_PARAM='characterEncoding=utf8&connectTimeout=60000&socketTimeout=60000&autoReconnect=true&useSSL=false&allowPublicKeyRetrieval=true' -e NACOS_SERVER_IP=IP1 -e NACOS_AUTH_ENABLE=true -e NACOS_AUTH_TOKEN=SecretKey012345678901234567890123456789012345678901234567890123456789 -e NACOS_AUTH_IDENTITY_KEY=nacos -e NACOS_AUTH_IDENTITY_VALUE=nacos -e NACOS_AUTH_USERNAME=admin -e NACOS_AUTH_PASSWORD=xxxxxx --privileged=true --restart=always --name nacos1 nacos/nacos-server:v2.2.1

6.2 第二台机器

docker run -d -p 8848:8848 -p 9848:9848 -p 9849:9849 -e JVM_XMS=128m -e JVM_XMX=128m -e JVM_XMN=128m -e MODE=cluster -e PREFER_HOST_MODE=hostname -e NACOS_SERVER_PORT=8848 -e NACOS_SERVERS="IP1:8848 IP2:8848 IP3:8848" -e SPRING_DATASOURCE_PLATFORM=mysql -e MYSQL_SERVICE_HOST=IP4 -e MYSQL_SERVICE_PORT=3306 -e MYSQL_SERVICE_USER=root -e MYSQL_SERVICE_PASSWORD=xxxxxx -e MYSQL_SERVICE_DB_NAME=nacos_config -e MYSQL_DATABASE_NUM=1 -e MYSQL_SERVICE_DB_PARAM='characterEncoding=utf8&connectTimeout=60000&socketTimeout=60000&autoReconnect=true&useSSL=false&allowPublicKeyRetrieval=true' -e NACOS_SERVER_IP=IP2 -e NACOS_AUTH_ENABLE=true -e NACOS_AUTH_TOKEN=SecretKey012345678901234567890123456789012345678901234567890123456789 -e NACOS_AUTH_IDENTITY_KEY=nacos -e NACOS_AUTH_IDENTITY_VALUE=nacos -e NACOS_AUTH_USERNAME=admin -e NACOS_AUTH_PASSWORD=xxxxxx --privileged=true --restart=always --name nacos2 nacos/nacos-server:v2.2.1

6.3 第三台机器

docker run -d -p 8848:8848 -p 9848:9848 -p 9849:9849 -e JVM_XMS=128m -e JVM_XMX=128m -e JVM_XMN=128m -e MODE=cluster -e PREFER_HOST_MODE=hostname -e NACOS_SERVER_PORT=8848 -e NACOS_SERVERS="IP1:8848 IP2:8848 IP3:8848" -e SPRING_DATASOURCE_PLATFORM=mysql -e MYSQL_SERVICE_HOST=IP4 -e MYSQL_SERVICE_PORT=3306 -e MYSQL_SERVICE_USER=root -e MYSQL_SERVICE_PASSWORD=xxxxxx -e MYSQL_SERVICE_DB_NAME=nacos_config -e MYSQL_DATABASE_NUM=1 -e MYSQL_SERVICE_DB_PARAM='characterEncoding=utf8&connectTimeout=60000&socketTimeout=60000&autoReconnect=true&useSSL=false&allowPublicKeyRetrieval=true' -e NACOS_SERVER_IP=IP3 -e NACOS_AUTH_ENABLE=true -e NACOS_AUTH_TOKEN=SecretKey012345678901234567890123456789012345678901234567890123456789 -e NACOS_AUTH_IDENTITY_KEY=nacos -e NACOS_AUTH_IDENTITY_VALUE=nacos -e NACOS_AUTH_USERNAME=admin -e NACOS_AUTH_PASSWORD=xxxxxx --privileged=true --restart=always --name nacos3 nacos/nacos-server:v2.2.1

7、进行访问

http://IP1:8848/nacos/index.html、http://IP2:8848/nacos/index.html、http://IP3:8848/nacos/index.html

搭建Nacos集群可以使用Docker来实现,步骤如下: 1. 安装DockerDocker Compose 2. 下载NacosDocker镜像 可以使用以下命令下载NacosDocker镜像: ``` docker pull nacos/nacos-server ``` 3. 创建Docker Compose配置文件 在本地创建一个docker-compose.yml文件,内容如下: ``` version: '3' services: nacos-server-1: image: nacos/nacos-server container_name: nacos-server-1 ports: - "8848:8848" environment: - PREFER_HOST_MODE=hostname - SPRING_DATASOURCE_PLATFORM=mysql - MYSQL_SERVICE_HOST=nacos-mysql - MYSQL_SERVICE_PORT=3306 - MYSQL_SERVICE_DB_NAME=nacos_config - MYSQL_SERVICE_USER=root - MYSQL_SERVICE_PASSWORD=root depends_on: - nacos-mysql networks: - nacos-network nacos-server-2: image: nacos/nacos-server container_name: nacos-server-2 ports: - "8849:8848" environment: - PREFER_HOST_MODE=hostname - SPRING_DATASOURCE_PLATFORM=mysql - MYSQL_SERVICE_HOST=nacos-mysql - MYSQL_SERVICE_PORT=3306 - MYSQL_SERVICE_DB_NAME=nacos_config - MYSQL_SERVICE_USER=root - MYSQL_SERVICE_PASSWORD=root depends_on: - nacos-mysql networks: - nacos-network nacos-mysql: image: mysql:5.7 container_name: nacos-mysql ports: - "3306:3306" environment: - MYSQL_ROOT_PASSWORD=root - MYSQL_DATABASE=nacos_config command: - mysqld --lower_case_table_names=1 --skip-ssl --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci volumes: - nacos-mysql-data:/var/lib/mysql networks: - nacos-network networks: nacos-network: volumes: nacos-mysql-data: ``` 4. 启动Nacos集群 使用以下命令启动Nacos集群: ``` docker-compose up -d ``` 5. 访问Nacos 在浏览器中访问http://localhost:8848/nacos,即可访问Nacos的Web页面。 至此,Nacos集群已经成功在Docker搭建完成。
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序员阿明

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值