使用docker搭建高可用Nacos注册中心

news/2024/5/10 5:21:09/文章来源:https://blog.csdn.net/qq_42413011/article/details/127252314

使用docker-compose搭建高可用Nacos注册中心

  • 写在前面
  • 使用docker
    • Nacos1.x
      • 单机方式搭建
        • 进入docker hub,查找镜像
        • 按照说明启动
        • 通过浏览器访问
        • 添加配置并使用客户端测试
      • 集群方式搭建
        • 搭建nacos需要的数据库环境
        • 编写nacos集群的docker脚本并启动
    • Nacos2.x
      • 单机方式搭建
        • 按照说明启动
        • 通过浏览器访问,并添加配置
        • 客户端使用
      • 集群方式搭建
        • 搭建nacos需要的数据库环境
        • 编写nacos集群的docker脚本并启动
  • 使用docker-compose
    • Nacos1.x
      • 单机方式搭建
        • 编写docker-compose.yaml脚本
        • 执行docker-compose脚本
        • 使用浏览器访问
        • 添加配置并使用客户端测试
      • 集群方式搭建
        • 生成nacos集群需要的sql文件
        • 生成docker-compose.yaml文件
        • 启动并使用浏览器访问
        • 添加配置,并使用客户端连接
    • Nacos2.x
      • 单机方式搭建
        • 编写docker-compose.yaml脚本
        • 启动并使用浏览器访问
        • 添加配置并使用客户端测试
      • 集群方式搭建
        • 生成nacos集群需要的sql文件
        • 生成docker-compose.yaml文件
        • 启动并使用浏览器访问
        • 添加配置并使用客户端测试

写在前面

关于nacos1.x和nacos2.x的区别以及使用方式,参考下面一篇链接
Nacos2.0兼容性及使用

使用docker

Nacos1.x

单机方式搭建

进入docker hub,查找镜像

NaocsImage
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

按照说明启动

docker run --name nacos -p 8848:8848 -e JVM_XMS="512m" -e -JVM_XMX="512m" -e 		  JVM_MS="168m" -e JVM_MMS="168m" -e JVM_XMN="288m" -e MODE=standalone -d 	lhstack/nacos:1.4.4

在这里插入图片描述
在这里插入图片描述

通过浏览器访问

在这里插入图片描述

添加配置并使用客户端测试

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

pom.xml

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>2.3.12.RELEASE</version><relativePath/> <!-- lookup parent from repository --></parent><groupId>com.example</groupId><artifactId>nacos-demo</artifactId><version>0.0.1-SNAPSHOT</version><name>nacos-demo</name><description>nacos-demo</description><properties><java.version>11</java.version><spring.cloud.alibaba.version>2.2.6.RELEASE</spring.cloud.alibaba.version></properties><dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId></dependency><dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope></dependency></dependencies><dependencyManagement><dependencies><dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-alibaba-dependencies</artifactId><version>${spring.cloud.alibaba.version}</version><scope>import</scope><type>pom</type></dependency></dependencies></dependencyManagement><build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId></plugin></plugins></build></project>

bootstrap.yml

spring:application:name: demoprofiles:active: testcloud:nacos:server-addr: 192.168.101.170:8848config:file-extension: yml

在这里插入图片描述
在这里插入图片描述

集群方式搭建

这里使用脚本方式搭建,方便维护

搭建nacos需要的数据库环境

  • 生成sql以及使用docker启动的数据库脚本
    相关sql脚本,去官网下载,这里搭建1.4.4版本的nacos,对应sql也是1.4.4的
    Nacos1.4.4-sql
    注意,这里需要在sql内容之前添加创建数据库的sql语句,方便在mysql启动时自动加载sql创建对应表

    ## 在sql文件最前面添加以下两行即可
    CREATE DATABASE `nacos` CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
    USE `nacos`;
    
    ## 创建nacos目录和sql目录
    mkdir -p nacos/sql && cd nacos/sql
    ## 下载sql脚本
    wget https://gitee.com/mirrors/Nacos/raw/1.4.4/distribution/conf/nacos-mysql.sql
    ## 在最前面添加数据库创建的sql
    sed -i "1iCREATE DATABASE nacos CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;" nacos-mysql.sql
    sed -i "2iUSE nacos;" nacos-mysql.sql
    cd ..
    # 生成docker启动脚本
    cat > nacos-mysql.sh <<EOF
    #/bin/bash
    docker rm -f mysql
    docker network rm nacos
    docker network create --driver=bridge --ipam-driver=default --subnet=10.42.0.0/16 nacos
    docker run --name mysql --restart=always --network=nacos --hostname=mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD="123456" -v \${PWD}/sql:/docker-entrypoint-initdb.d/ -v \${PWD}/data:/var/lib/mysql -d mysql:8.0.28
    EOF
    

    在这里插入图片描述

  • 执行启动docker-mysql的sh脚本

    sh nacos-mysql.sh
    

    在这里插入图片描述

  • 通过navicat等数据库客户端工具连接查看
    在这里插入图片描述

编写nacos集群的docker脚本并启动

  • 通过nacos镜像地址的说明,可以发现,搭建集群需要几个参数,分别是

    NACOS_SERVERS: nacos集群地址
    MYSQL_SERVICE_HOST: 数据库host
    MYSQL_SERVICE_USER: 数据库用户名
    MYSQL_SERVICE_PASSWORD: 数据库密码
    MYSQL_SERVICE_DB_NAME: 数据库名称
    SPRING_DATASOURCE_PLATFORM: 数据库类型,这里是mysql
    MYSQL_SERVICE_DB_PARAM: 数据库连接扩展参数
    
  • 编写脚本

    cat > nacos-cluster.env <<EOF
    NACOS_SERVERS=10.42.0.10 10.42.0.11
    TZ=Asia/Shanghai
    MYSQL_SERVICE_HOST=mysql
    MYSQL_SERVICE_USER=root
    MYSQL_SERVICE_PASSWORD=123456
    MYSQL_SERVICE_DB_NAME=nacos
    MYSQL_SERVICE_DB_PARAM=allowPublicKeyRetrieval=true&rewriteBatchedStatements=true&characterEncoding=UTF8&serverTimezone=UTC&connectTimeout=10000&socketTimeout=30000&autoReconnect=true&useSSL=false
    SPRING_DATASOURCE_PLATFORM=mysql
    JVM_XMX=384m
    JVM_XMS=384m
    JVM_XMN=192m
    JVM_MS=128m
    JVM_MMS=128m
    EOF
    cat > nacos-cluster.sh <<EOF
    #/bin/bash
    docker rm -f nacos nacos1
    docker run --name nacos --restart=always --ip=10.42.0.10 --network=nacos --hostname=nacos -p 8848:8848 --env-file=\${PWD}/nacos-cluster.env -d lhstack/nacos:1.4.4
    docker run --name nacos1 --restart=always --ip=10.42.0.11 --network=nacos --hostname=nacos -p 8849:8848 --env-file=\${PWD}/nacos-cluster.env -d lhstack/nacos:1.4.4 
    EOF
    
  • 执行脚本,启动nacos集群

    sh nacos-cluster.sh
    

    在这里插入图片描述
    在这里插入图片描述

  • 浏览器访问并添加配置
    在这里插入图片描述

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

  • 使用客户端测试
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

Nacos2.x

nacos2.x使用的grpc,采用ip偏移量的方式,比如http暴露的端口是8848,grpc暴露的端口对应就是9848

单机方式搭建

按照说明启动

# 关闭之前的nacos容器,如果没有启动,则可以不管
docker rm -f nacos
docker run --name nacos -p 8848:8848 -p 9848:9848 -e JVM_XMS="512m" -e -JVM_XMX="512m" -e 		  JVM_MS="168m" -e JVM_MMS="168m" -e JVM_XMN="288m" -e MODE=standalone -d 	lhstack/nacos:2.1.1

在这里插入图片描述

通过浏览器访问,并添加配置

  • 浏览器访问,并添加配置
    在这里插入图片描述
    在这里插入图片描述

客户端使用

  • 版本依赖
    这里由于服务端是2.x的版本,因此客户端依赖的版本从2.2.6.RELEASE修改为2.2.7.RELEASE
    <?xml version="1.0" encoding="UTF-8"?>
    <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>2.3.12.RELEASE</version><relativePath/> <!-- lookup parent from repository --></parent><groupId>com.example</groupId><artifactId>nacos-demo</artifactId><version>0.0.1-SNAPSHOT</version><name>nacos-demo</name><description>nacos-demo</description><properties><java.version>11</java.version><spring.cloud.alibaba.version>2.2.7.RELEASE</spring.cloud.alibaba.version></properties><dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId></dependency><dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope></dependency></dependencies><dependencyManagement><dependencies><dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-alibaba-dependencies</artifactId><version>${spring.cloud.alibaba.version}</version><scope>import</scope><type>pom</type></dependency></dependencies></dependencyManagement><build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId></plugin></plugins></build></project>
    
  • 配置
    在这里插入图片描述
  • 启动验证
    在这里插入图片描述
    在这里插入图片描述

集群方式搭建

搭建nacos需要的数据库环境

  • 生成sql以及使用docker启动的数据库脚本
    相关sql脚本,去官网下载,这里搭建2.1.1版本的nacos,对应sql也是2.1.1的
    Nacos2.1.1-sql
    注意,这里需要在sql内容之前添加创建数据库的sql语句,方便在mysql启动时自动加载sql创建对应表

    ## 在sql文件最前面添加以下两行即可
    CREATE DATABASE `nacos` CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
    USE `nacos`;
    
    ## 创建nacos目录和sql目录
    mkdir -p nacos/sql && cd nacos/sql
    ## 下载sql脚本
    wget https://gitee.com/mirrors/Nacos/raw/2.1.1/distribution/conf/nacos-mysql.sql
    ## 在最前面添加数据库创建的sql
    sed -i "1iCREATE DATABASE nacos CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;" nacos-mysql.sql
    sed -i "2iUSE nacos;" nacos-mysql.sql
    cd ..
    # 生成docker启动脚本
    cat > nacos-mysql.sh <<EOF
    #/bin/bash
    docker rm -f mysql
    docker network rm nacos
    docker network create --driver=bridge --ipam-driver=default --subnet=10.42.0.0/16 nacos
    docker run --name mysql --restart=always --network=nacos --hostname=mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD="123456" -v \${PWD}/sql:/docker-entrypoint-initdb.d/ -v \${PWD}/data:/var/lib/mysql -d mysql:8.0.28
    EOF
    

    在这里插入图片描述

  • 执行启动docker-mysql的sh脚本

    sh nacos-mysql.sh
    

    在这里插入图片描述

  • 通过navicat等数据库客户端工具连接查看
    在这里插入图片描述

编写nacos集群的docker脚本并启动

  • 通过nacos镜像地址的说明,可以发现,搭建集群需要几个参数,分别是
    NACOS_SERVERS: nacos集群地址
    MYSQL_SERVICE_HOST: 数据库host
    MYSQL_SERVICE_USER: 数据库用户名
    MYSQL_SERVICE_PASSWORD: 数据库密码
    MYSQL_SERVICE_DB_NAME: 数据库名称
    SPRING_DATASOURCE_PLATFORM: 数据库类型,这里是mysql
    MYSQL_SERVICE_DB_PARAM: 数据库连接扩展参数
    
  • 编写脚本
    cat > nacos-cluster.env <<EOF
    NACOS_SERVERS=10.42.0.10 10.42.0.11
    TZ=Asia/Shanghai
    MYSQL_SERVICE_HOST=mysql
    MYSQL_SERVICE_USER=root
    MYSQL_SERVICE_PASSWORD=123456
    MYSQL_SERVICE_DB_NAME=nacos
    MYSQL_SERVICE_DB_PARAM=allowPublicKeyRetrieval=true&rewriteBatchedStatements=true&characterEncoding=UTF8&serverTimezone=UTC&connectTimeout=10000&socketTimeout=30000&autoReconnect=true&useSSL=false
    SPRING_DATASOURCE_PLATFORM=mysql
    JVM_XMX=384m
    JVM_XMS=384m
    JVM_XMN=192m
    JVM_MS=128m
    JVM_MMS=128m
    EOF
    cat > nacos-cluster.sh <<EOF
    #/bin/bash
    docker rm -f nacos nacos1
    docker run --name nacos --restart=always --ip=10.42.0.10 --network=nacos --hostname=nacos -p 8848:8848 -p 9848:9848 --env-file=\${PWD}/nacos-cluster.env -d lhstack/nacos:2.1.1
    docker run --name nacos1 --restart=always --ip=10.42.0.11 --network=nacos --hostname=nacos -p 8849:8848 -p 9849:9848 --env-file=\${PWD}/nacos-cluster.env -d lhstack/nacos:2.1.1
    EOF
    
  • 执行脚本,启动nacos集群
    sh nacos-cluster.sh
    
    在这里插入图片描述
    在这里插入图片描述
  • 通过浏览器访问,并添加配置
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
  • 使用客户端连接
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

使用docker-compose

Nacos1.x

单机方式搭建

编写docker-compose.yaml脚本

# 停掉之前的容器
docker rm -f nacos nacos1 mysql
# 生成docker-compose脚本
cat > docker-compose.yaml <<EOF
version: '3'
services:nacos:image: lhstack/nacos:1.4.4container_name: nacosrestart: alwaysports:- '8848:8848'environment:MODE: standaloneJVM_XMX: 512mJVM_MS: 168mJVM_MMS: 168mJVM_XMN: 288mhealthcheck:test: ["CMD-SHELL","wget --no-cache --spider 'http://localhost:8848/nacos/actuator/health' || exit 1"]timeout: 2sinterval: 10sretries: 5start_period: 15slogging:options:max-file: '1'max-size: '32k'deploy:resources:limits:cpus: '20m'memory: '512M'
EOF
  • 运行上面的脚本
    在这里插入图片描述

执行docker-compose脚本

docker-compose up -d

在这里插入图片描述

使用浏览器访问

在这里插入图片描述

添加配置并使用客户端测试

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

集群方式搭建

注意,所有操作都在demo目录下面,请确认清楚
在这里插入图片描述

生成nacos集群需要的sql文件

相关sql脚本,去官网下载,这里搭建1.4.4版本的nacos,对应sql也是1.4.4的
Nacos1.4.4-sql
注意,这里需要在sql内容之前添加创建数据库的sql语句,方便在mysql启动时自动加载sql创建对应表

## 删除之前的数据库生成的数据和sql文件
rm -rf data sql
## 创建nacos目录和sql目录
mkdir -p nacos/sql && cd nacos/sql
## 下载sql脚本
wget https://gitee.com/mirrors/Nacos/raw/1.4.4/distribution/conf/nacos-mysql.sql
## 在最前面添加数据库创建的sql
sed -i "1iCREATE DATABASE nacos CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;" nacos-mysql.sql
sed -i "2iUSE nacos;" nacos-mysql.sql
cd ..

生成docker-compose.yaml文件

  • 删除为使用的网卡

    docker network prune
    

    在这里插入图片描述

  • 生成docker-compose.yaml文件

    cat > docker-compose.yaml <<EOF
    version: '3'
    services:mysql:container_name: mysqlimage: mysql:8.0.28restart: alwaysports:- '3306:3306'environment:MYSQL_ROOT_PASSWORD: "123456"TZ: Asia/Shanghaivolumes:- ./data:/var/lib/mysql- ./sql:/docker-entrypoint-initdb.d/networks:- nacosdeploy:resources:limits:cpus: '0.5'memory: '512M'healthcheck:test: ["CMD","mysqladmin","-uroot","-p123456","ping","-h","localhost"]timeout: 20sretries: 10nacos:container_name: nacosimage: lhstack/nacos:1.4.4restart: alwaysports:- '8848:8848'environment:MYSQL_SERVICE_DB_PARAM: "allowPublicKeyRetrieval=true&rewriteBatchedStatements=true&characterEncoding=UTF8&serverTimezone=UTC&connectTimeout=10000&socketTimeout=30000&autoReconnect=true&useSSL=false"NACOS_SERVERS: "10.42.0.10 10.42.0.11"TZ: Asia/ShanghaiMYSQL_SERVICE_HOST: 'mysql'MYSQL_SERVICE_USER: 'root'MYSQL_SERVICE_PASSWORD: '123456'MYSQL_SERVICE_DB_NAME: 'nacos'SPRING_DATASOURCE_PLATFORM: 'mysql'JVM_XMX: '384m'JVM_XMS: '384m'JVM_XMN: '192m'JVM_MS: '128m'JVM_MMS: '128m'logging:options:max-file: '1'max-size: '16k'depends_on:mysql:condition: service_healthynetworks:nacos:ipv4_address: 10.42.0.10deploy:resources:limits:cpus: '1'memory: 384Mnacos1:container_name: nacos1image: lhstack/nacos:1.4.4restart: alwaysports:- '8849:8848'environment:MYSQL_SERVICE_DB_PARAM: "allowPublicKeyRetrieval=true&rewriteBatchedStatements=true&characterEncoding=UTF8&serverTimezone=UTC&connectTimeout=10000&socketTimeout=30000&autoReconnect=true&useSSL=false"TZ: Asia/ShanghaiNACOS_SERVERS: "10.42.0.10 10.42.0.11"MYSQL_SERVICE_HOST: 'mysql'MYSQL_SERVICE_USER: 'root'MYSQL_SERVICE_PASSWORD: '123456'MYSQL_SERVICE_DB_NAME: 'nacos'SPRING_DATASOURCE_PLATFORM: 'mysql'JVM_XMX: '384m'JVM_XMS: '384m'JVM_XMN: '192m'JVM_MS: '128m'JVM_MMS: '128m'logging:options:max-file: '1'max-size: '16k'depends_on:mysql:condition: service_healthynetworks:nacos:ipv4_address: 10.42.0.11deploy:resources:limits:cpus: '1'memory: 384M
    networks:nacos:driver: bridgeipam:driver: defaultconfig:- subnet: 10.42.0.0/16    
    EOF
    

启动并使用浏览器访问

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

添加配置,并使用客户端连接

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

Nacos2.x

单机方式搭建

编写docker-compose.yaml脚本

# 停掉之前的容器
docker rm -f nacos nacos1 mysql
# 生成docker-compose脚本
cat > docker-compose.yaml <<EOF
version: '3'
services:nacos:image: lhstack/nacos:2.1.1container_name: nacosrestart: alwaysports:- '8848:8848'- '9848:9848'environment:MODE: standaloneJVM_XMX: 512mJVM_MS: 168mJVM_MMS: 168mJVM_XMN: 288mhealthcheck:test: ["CMD-SHELL","wget --no-cache --spider 'http://localhost:8848/nacos/actuator/health' || exit 1"]timeout: 2sinterval: 10sretries: 5start_period: 15slogging:options:max-file: '1'max-size: '32k'deploy:resources:limits:cpus: '20m'memory: '512M'
EOF

启动并使用浏览器访问

docker-compose up -d

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

添加配置并使用客户端测试

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

集群方式搭建

注意,所有操作都在demo目录下面,请确认清楚
在这里插入图片描述

生成nacos集群需要的sql文件

相关sql脚本,去官网下载,这里搭建2.1.1版本的nacos,对应sql也是2.1.1的
Nacos2.1.1-sql
注意,这里需要在sql内容之前添加创建数据库的sql语句,方便在mysql启动时自动加载sql创建对应表

## 删除之前的数据库生成的数据和sql文件
rm -rf data sql
## 创建nacos目录和sql目录
mkdir -p nacos/sql && cd nacos/sql
## 下载sql脚本
wget https://gitee.com/mirrors/Nacos/raw/2.1.1/distribution/conf/nacos-mysql.sql
## 在最前面添加数据库创建的sql
sed -i "1iCREATE DATABASE nacos CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;" nacos-mysql.sql
sed -i "2iUSE nacos;" nacos-mysql.sql
cd ..

生成docker-compose.yaml文件

  • 清除之前的痕迹

    docker rm -f nacos nacos1 mysql
    #删除为使用的网卡
    docker network prune
    

    在这里插入图片描述

  • 生成docker-compose.yaml文件

    cat > docker-compose.yaml <<EOF
    version: '3'
    services:mysql:container_name: mysqlimage: mysql:8.0.28restart: alwaysports:- '3306:3306'environment:MYSQL_ROOT_PASSWORD: "123456"TZ: Asia/Shanghaivolumes:- ./data:/var/lib/mysql- ./sql:/docker-entrypoint-initdb.d/networks:- nacosdeploy:resources:limits:cpus: '0.5'memory: '512M'healthcheck:test: ["CMD","mysqladmin","-uroot","-p123456","ping","-h","localhost"]timeout: 20sretries: 10nacos:container_name: nacosimage: lhstack/nacos:2.1.1restart: alwaysports:- '8848:8848'- '9848:9848'environment:MYSQL_SERVICE_DB_PARAM: "allowPublicKeyRetrieval=true&rewriteBatchedStatements=true&characterEncoding=UTF8&serverTimezone=UTC&connectTimeout=10000&socketTimeout=30000&autoReconnect=true&useSSL=false"NACOS_SERVERS: "10.42.0.10 10.42.0.11"TZ: Asia/ShanghaiMYSQL_SERVICE_HOST: 'mysql'MYSQL_SERVICE_USER: 'root'MYSQL_SERVICE_PASSWORD: '123456'MYSQL_SERVICE_DB_NAME: 'nacos'SPRING_DATASOURCE_PLATFORM: 'mysql'JVM_XMX: '384m'JVM_XMS: '384m'JVM_XMN: '192m'JVM_MS: '128m'JVM_MMS: '128m'logging:options:max-file: '1'max-size: '16k'depends_on:mysql:condition: service_healthynetworks:nacos:ipv4_address: 10.42.0.10deploy:resources:limits:cpus: '1'memory: 384Mnacos1:container_name: nacos1image: lhstack/nacos:2.1.1restart: alwaysports:- '8849:8848'- '9849:9848'environment:MYSQL_SERVICE_DB_PARAM: "allowPublicKeyRetrieval=true&rewriteBatchedStatements=true&characterEncoding=UTF8&serverTimezone=UTC&connectTimeout=10000&socketTimeout=30000&autoReconnect=true&useSSL=false"TZ: Asia/ShanghaiNACOS_SERVERS: "10.42.0.10 10.42.0.11"MYSQL_SERVICE_HOST: 'mysql'MYSQL_SERVICE_USER: 'root'MYSQL_SERVICE_PASSWORD: '123456'MYSQL_SERVICE_DB_NAME: 'nacos'SPRING_DATASOURCE_PLATFORM: 'mysql'JVM_XMX: '384m'JVM_XMS: '384m'JVM_XMN: '192m'JVM_MS: '128m'JVM_MMS: '128m'logging:options:max-file: '1'max-size: '16k'depends_on:mysql:condition: service_healthynetworks:nacos:ipv4_address: 10.42.0.11deploy:resources:limits:cpus: '1'memory: 384M
    networks:nacos:driver: bridgeipam:driver: defaultconfig:- subnet: 10.42.0.0/16    
    EOF
    

启动并使用浏览器访问

docker-compose up -d 

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

添加配置并使用客户端测试

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_22281.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Unity小功能开发实战教程】在UI画布上画网格线

文章目录&#x1f449;一、前言&#x1f449;二、Unity上画网格线的效果&#x1f449;二、画网格线的原理&#x1f449;三、完整代码&#x1f449;三、注意事项&#x1f449;一、前言 在大多软件中&#xff0c;网格线常常起到辅助线条的作用&#xff0c;像word中的网格线主要用…

python作业4

1 2 3 4 5 6 7 8 9 10 实战 1 2 3 4 5 6

(5)catanddong_用resnet18迁移学习分类和测试

1、数据集制作 (1)将从kaggle下载的数据集中的train目录下的图片分类为cat和dog文件夹,每个文件夹下12500张图片 (2)使用教程1的方法进行数据的划分 (1)数据集的划分_chencaw的博客-CSDN博客 2、使用resnet18的预训练模型迁移训练 (1)使用了dqtm查看进度 参考了tqdm…

面向对象(上)01

面向对象(上)01 Java面向对象学习的三条主线: (第4 - 6章) 1. Java类和类的成员 : 属性, 方法, 构造器; 代码块, 内部类. 1. 面向对象的三大特征 : 封装性, 继承性, 多态性 , (抽象性) . 1. 其他关键字 : this , super , static , final , abstract , interface , package , i…

websocket协议详解

websocket是什么&#xff1f; websocket是一种浏览器与服务器进行全双工通信的网络技术&#xff0c;属于 应用层协议。它 基于TCP传输协议&#xff0c;并 复用HTTP 的握手通道&#xff0c;用来弥补HTTP协议在持久通信能力上的不足。 ws 默认端口&#xff1a;80wss 默认端口&a…

Java高并发编程实战7,ConcurrentHashMap详解

一、ConcurrentHashMap详解 1、HashMap 在JDK1.8以前&#xff0c;HashMap是基于数组 链表来实现的&#xff0c;HashMap是一个数组&#xff0c;每个数组元素又是一张链表。 当向HashMap中增加元素时&#xff0c;会先根据此元素Key的hash值计算出该元素将要保存在数组中的下标…

SqlServer2008R2自动删除备份

https://blog.51cto.com/u_15162069/2776830 首先我们打开SqlServer管理工具(SSMS),在左侧目录中找到 管理-->右键维护计划-->新建维护计划双击左侧下方目录:创建 ”清除维护“ 任务双击后打开提示窗口,我们设置 “清除维护” 任务内容:即:在删除本机数据库中,C:\T…

手写数字识别的数据集讲解

CLASS torchvision.datasets.MNIST(root: str, train: bool True, transform: Optional[Callable] None, target_transform: Optional[Callable] None, download: bool False) root (string)&#xff1a; 表示数据集的根目录&#xff0c;其中根目录存放MNIST/processed/tra…

【初学者】Vue使用axios向Node.js发起请求以及跨域问题的解决

目录 项目创建 代码 解决跨域问题 几个注意点 运行结果展示 axios官方文档&#xff1a;起步 | Axios 中文文档 | Axios 中文网 项目创建 本文实例用到的两个项目&#xff0c;分别命名为server和vue-axios。 server是node.js项目&#xff0c;创建方式&#xff1a; # 创建…

Codeforces Round #825 (Div. 2)

A. Make A Equal to B Sample input 5 3 1 0 1 0 0 1 4 1 1 0 0 0 1 1 1 2 1 1 1 1 4 1 0 0 1 0 1 1 0 1 0 1 Sample output 1 2 0 1 1 题意&#xff1a; 你有两个长度为n的数组a和b&#xff0c;你可以进行一次操作&#xff0c;将a数组的某个位置的数取反&#xff0c;或者…

LVM与磁盘配额

分区的缺点: 1、一旦建立无法修改 想修改得重新格式化 数据丢失 2、不够灵活 空间只能来自一块硬盘,且必须是连续的空间 3、没有备份冗余功能 需要工程师手动备份如果没有lvm可以下载:yum install lvm2 -y LVM的管理命令 主要命令:LVM为我们提供了逻辑概念上的磁盘,使得文…

usb sop and eop

USB包(packet)由SOP,SYNC,Packet内容和EOP组成. SOP信号-------------瞬态信号 协议中的描述&#xff1a;7.1.7.4.1 The start of a packet (SOP) is signaled by the originating port by driving the D and D- lines from the Idle state to the opposite logic level (K …

实验六:倾斜开关实验

OK,周一周二一共10节课,比较辛苦,昨天下午还有咨询师模拟演练,很累,就早早休息了 今天早上就想写一个实验指导书 也就是现在的实验六 一会十点有《C语言程序设计》的课,不过,今天好在就只有两节课(课时,一次大课2个课时,习惯说2节课) 感觉又是我最喜欢和擅长的C…

JSON——简介

JSON——简介 JSON——基础语法 JSON——json数据与java对象的转换// 将java对象转为json字符串User user = new User(1,"zahngsan","123");// 转换String jsonString = JSON.toJSONString(user);System.out.println(jsonString);// 将json字符串转为jav…

java基于vue+springboot 的体育用品销售购物网站 多商家 nodejs

用户在打开网站之后首先打开的是首页部分&#xff0c;在首页部分可以看到一些推荐的信息 环境需要 1.运行环境&#xff1a;最好是java jdk 1.8&#xff0c;这是目前最稳定的JDK也是被使用最多的JDK版本。 2.IDE环境&#xff1a;IDEA&#xff0c;Eclipse都可以。推荐IDEA; 3.to…

移动端IM产品RainbowChat[专业版] iOS端 v6.0版已发布!

关于MobileIMSDK MobileIMSDK 是一套专门为移动端开发的开源IM即时通讯框架&#xff0c;超轻量级、高度提炼&#xff0c;一套API优雅支持UDP 、TCP 、WebSocket 三种协议&#xff0c;支持iOS、Android、H5、标准Java平台&#xff0c;服务端基于Netty编写。 工程开源地址是&…

分治法实现二分查找(python)

问题描述&#xff1a; 改写二分查找算法&#xff1a;设a[1…n]是一个已经排好序的数组&#xff0c;改写二分查找算法: 当搜索元素x不在数组中时&#xff0c;返回小于x的最大元素位置i&#xff0c;和大于x的最小元素位置j&#xff1b; (即返回x的左、右2个元素) 当搜索元素x在…

系动词使役动词

系动词 系动词的作用就是赋值 I am a rabbit 把 a rabbit赋值给i我 我是一只兔子 The rabbit is smart 这兔子是聪明的 smart赋值给兔子 系动词连系的方式,就是简简单单把它前后的概念含义连起来而已 所以系动词又叫连系动词 (Linking Verb) 就是把前后两端连起来(link)就好…

基于侧影轮廓的三维模型构建

建模过程 图像的获取 由于待建模物体具有较多细节,因此选择在同一个方向拍摄两个角度的照片(手机倾斜角大约为60度和45度,如下图所示),以及顶部细节照片,最终拍摄的有效照片为35张。模型构建 新建项目,并导入所有拍摄的照片照片掩饰 可以先采用自动掩饰工具将物体轮廓从…

kotlin koin

介绍 Koin是一个面向Android developer的依赖注入框架使用场景 为什么要用依赖注入框架? 比如我们有一个下载器对象Downloader,需要下面三个对象才能完成构造。但是这个下载器对象在各个活动中使用频繁val executor = Executor() val client = HttpClient() val request = Re…