Docker:docker部署Nacos(单例与集群)并配置自定义Mysql

发布时间:2022-06-24 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了Docker:docker部署Nacos(单例与集群)并配置自定义Mysql脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。

1. 拉取Nacos镜像

下载nacos镜像

#默认拉取最新的Nacos镜像
docker pull nacos/nacos-server

Docker:docker部署Nacos(单例与集群)并配置自定义Mysql

 2. 启动Nacos服务

  单例容器创建

    1. 创建简单的单例Nacos服务

# 启动容器
docker run -d --name nacos -p 8848:8848 -e PREFER_HOST_MODE=hostname -e MODE=standalone -t nacos/nacos-server

    2. Nacos容器生成可配参数表

Nacos配置参数

参数描述

参数可选值域

默认值

MODE

cluster模式/standalone模式

cluster/standalone 

cluster 

NACOS_SERVERS

nacos cluster地址

ip1 ip2 ip3

示例:

NACOS_SERVERS="nacos1-ip:8848 nacos2-ip:8848 nacos3-ip:8848"

PREFER_HOST_MODE

是否支持hostname 

 hostname/ip

ip 

NACOS_SERVER_PORT

nacos服务器端口 

 

8848 

NACOS_SERVER_IP

 多网卡下的自定义nacos服务器IP

 

 

SPRING_DATASOURCE_PLATFORM

MODE的配置参数(standalone) 支持 mysql 

 mysql/empty

empty 

MYSQL_MASTER_SERVICE_HOST

mysql 主节点host 

 

示例:

MYSQL_SERVICE_HOST=119.90.153.96

MYSQL_MASTER_SERVICE_PORT

 mysql 主节点端口

 

 3306

MYSQL_MASTER_SERVICE_DB_NAME

mysql 主节点数据库 

 

指定nacos库表:

MYSQL_SERVICE_DB_NAME=nacos

MYSQL_MASTER_SERVICE_USER

 数据库用户名

 

 

MYSQL_MASTER_SERVICE_PASSWORD

 数据库密码

 

 

MYSQL_SLAVE_SERVICE_HOST

mysql从节点host 

 

 

MYSQL_SLAVE_SERVICE_PORT

mysql从节点端口 

 

 3306

MYSQL_DATABASE_NUM

 数据库数量

 

JVM_XMS

JVM虚拟机设置-Xms 

 

 2g

JVM_XMX

 JVM虚拟机设置-Xmx

 

 2g

JVM_XMN

 JVM虚拟机设置-Xmn

 

 1g

JVM_MS

JVM虚拟机设置-XX:MetaspaceSize  

 

 128m

JVM_MMS

 JVM虚拟机设置-XX:MaxMetaspaceSize 

 

 320m

NACOS_DEBUG

开启远程调试 

 y/n

TOMCAT_ACCESSLOG_ENABLED

server.tomcat.accesslog.enabled 

 

 false

    3. Nacos服务访问地址

      地址:http://ip:8848/nacos 账号:nacos 密码:nacos

Docker:docker部署Nacos(单例与集群)并配置自定义Mysql

  集群容器搭建

    1. 创建Nacos-1容器

docker run -it 
-e PREFER_HOST_MODE=ip 
-e MODE=cluster 
-e NACOS_SERVERS="172.18.1.42:8848 172.18.1.43:8848" 
-e SPRING_DATASOURCE_PLATFORM=mysql 
-e MYSQL_SERVICE_HOST=172.18.1.30 
-e MYSQL_SERVICE_PORT=3306 
-e MYSQL_SERVICE_DB_NAME=nacos 
-e MYSQL_SERVICE_USER=root 
-e MYSQL_SERVICE_PASSWORD=password 
-p 9901:8848 
--name nacos01 
--net mynet --ip 172.18.1.41 
--restart=always 
nacos/nacos-server

    2. 创建Nacos-2容器

docker run -it 
-e PREFER_HOST_MODE=ip 
-e MODE=cluster 
-e NACOS_SERVERS="172.18.1.41:8848 172.18.1.43:8848" 
-e SPRING_DATASOURCE_PLATFORM=mysql 
-e MYSQL_SERVICE_HOST=172.18.1.30 
-e MYSQL_SERVICE_PORT=3306 
-e MYSQL_SERVICE_DB_NAME=nacos 
-e MYSQL_SERVICE_USER=root 
-e MYSQL_SERVICE_PASSWORD=root123 
-p 9902:8848 
--name nacos02 
--net mynet --ip 172.18.1.42 
--restart=always 
nacos/nacos-server

    3. Nacos容器生成可配参数表

Nacos配置参数

参数描述

参数可选值域

默认值

MODE

cluster模式/standalone模式

cluster/standalone 

cluster 

NACOS_SERVERS

nacos cluster地址

ip1 ip2 ip3

示例:

NACOS_SERVERS="nacos1-ip:8848 nacos2-ip:8848 nacos3-ip:8848"

PREFER_HOST_MODE

是否支持hostname 

 hostname/ip

ip 

NACOS_SERVER_PORT

nacos服务器端口 

 

8848 

NACOS_SERVER_IP

 多网卡下的自定义nacos服务器IP

 

 

SPRING_DATASOURCE_PLATFORM

MODE的配置参数(standalone) 支持 mysql 

 mysql/empty

empty 

MYSQL_MASTER_SERVICE_HOST

mysql 主节点host 

 

示例:

MYSQL_SERVICE_HOST=119.90.153.96

MYSQL_MASTER_SERVICE_PORT

 mysql 主节点端口

 

 3306

MYSQL_MASTER_SERVICE_DB_NAME

mysql 主节点数据库 

 

指定nacos库表:

MYSQL_SERVICE_DB_NAME=nacos

MYSQL_MASTER_SERVICE_USER

 数据库用户名

 

 

MYSQL_MASTER_SERVICE_PASSWORD

 数据库密码

 

 

MYSQL_SLAVE_SERVICE_HOST

mysql从节点host 

 

 

MYSQL_SLAVE_SERVICE_PORT

mysql从节点端口 

 

 3306

MYSQL_DATABASE_NUM

 数据库数量

 

JVM_XMS

JVM虚拟机设置-Xms 

 

 2g

JVM_XMX

 JVM虚拟机设置-Xmx

 

 2g

JVM_XMN

 JVM虚拟机设置-Xmn

 

 1g

JVM_MS

JVM虚拟机设置-XX:MetaspaceSize  

 

 128m

JVM_MMS

 JVM虚拟机设置-XX:MaxMetaspaceSize 

 

 320m

NACOS_DEBUG

开启远程调试 

 y/n

TOMCAT_ACCESSLOG_ENABLED

server.tomcat.accesslog.enabled 

 

 false

 

 

    4. 查看到集群中有多少台服务器

Docker:docker部署Nacos(单例与集群)并配置自定义Mysql

    5. 实现Nginx搭建负载均衡

      1) 为什么要实现反向代理?

           因为一个集群中两台服务之间没有联系,必须给这两台服务进行建立联系,才能登一个账号可以进行同步操作。

      2) 修改Nginx的配置文件 defalut.conf

upstream nacosList {
    server 172.18.1.41:8848 weight=1;
    server 172.18.1.42:8848 weight=2;
}

server {
    listen  80;
    server_name  www.zking.com;

    location / {
        root   /etc/nginx/html/;
        index  index.html index.htm;
    }

    error_page   500 502 503 504  /50x.html;

    location = /50x.html {
        root   /usr/share/nginx/html;
    }

    location /nacos {
        proxy_pass  http://nacosList;
    }

}

      3)生成Nginx容器

docker run -itd 
--name nginx --net mynet 
-v /home/nginx/conf.d:/etc/nginx/conf.d 
-v /home/nginx/html:/etc/nginx/html 
-v /home/nginx/log:/usr/log/nginx 
-p 8080:80 
nginx

       4) 访问Nginx的地址

        地址 http://localhost:80/nacos

Docker:docker部署Nacos(单例与集群)并配置自定义Mysql

 

 

文章整合至:https://blog.csdn.net/qq_34807429/article/details/103779305、https://blog.csdn.net/m0_53151031/article/details/123118920、https://copyfuture.com/blogs-details/20200117121620859lkygduriq48ayjc、

脚本宝典总结

以上是脚本宝典为你收集整理的Docker:docker部署Nacos(单例与集群)并配置自定义Mysql全部内容,希望文章能够帮你解决Docker:docker部署Nacos(单例与集群)并配置自定义Mysql所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签:数据库