Linux之docker安装部署nacos集群

文章目录

  • docker安装部署nacos集群
    • 1.镜像拉取
    • 2.参数说明
    • 3.创建数据库
      • 1)在GitHub上下:https://github.com/alibaba/nacos/releases,下载nacos-server-1.4.0.zip
      • 2)把压缩包解压:有一个sql执行脚本,/conf/nacos-mysql.sql
      • 3)创建数据库nacos_config并执行sql脚本
    • 3.启动nacos命令
    • 4.访问nacos


docker安装部署nacos集群

前提条件

  • 三台服务器ip:192.168.56.102、192.168.56.105、192.168.56.106
  • 安装好docker环境(教程:Linux的centos7安装docker)
  • 安装好mysql数据库

1.镜像拉取

docker pull nacos/nacos-server:1.4.0

2.参数说明

参数名 描述 选项
MODE 集群/独立 cluster/standalone 默认:cluster
NACOS_SERVERS nacos群集地址 例如。ip1:端口1 ip2:端口2 ip3:端口3
PREFER_HOST_MODE 是否支持主机名 主机名/ IP默认IP
NACOS_APPLICATION_PORT nacos服务器端口 默认8848
NACOS_SERVER_IP 网络为mutil-network时自定义nacos服务器ip
SPRING_DATASOURCE_PLATFORM 独立支持mysql mysql /空默认为空
MYSQL_SERVICE_HOST mysql主机
MYSQL_SERVICE_PORT mysql数据库端口 默认值:3306
MYSQL_SERVICE_DB_NAME mysql数据库名称
MYSQL_SERVICE_USER 数据库的用户名
MYSQL_SERVICE_PASSWORD 数据库密码
MYSQL_DATABASE_NUM 表示数据库数量 默认值:1
MYSQL_SERVICE_DB_PARAM 数据库URL参数 默认值:characterEncoding = utf8&connectTimeout = 1000&socketTimeout = 3000&autoReconnect = true
JVM_XMS -Xms 默认值:2g
JVM_XMX -Xmx 默认值:2g
JVM_XMN -Xmn 默认值:1g
JVM_MS -XX:MetaspaceSize
JVM_MMS -XX:MaxMetaspaceSize 默认值:320m
NACOS_DEBUG 启用远程调试
TOMCAT_ACCESSLOG_ENABLED server.tomcat.accesslog.enabled 默认值:false
NACOS_AUTH_SYSTEM_TYPE 要使用的身份验证系统,目前仅支持“ nacos” 默认值:nacos
NACOS_AUTH_ENABLE 如果打开身份验证系统 默认值:false
NACOS_AUTH_TOKEN_EXPIRE_SECONDS 令牌到期时间(以秒为单位) 默认值:18000
NACOS_AUTH_TOKEN 默认令牌 默认值:SecretKey012345678901234567890123456789012345678901234567890123456789
NACOS_AUTH_CACHE_ENABLE 打开/关闭身份验证信息的缓存。通过打开此开关,认证信息的更新将有15秒的延迟。 默认值:false
MEMBER_LIST 使用配置文件或命令行参数设置集群列表 例如:192.168.16.101:8847?raft_port = 8807、192.168.16.101?raft_port = 8808、192.168.16.101:8849?raft_port = 8809
EMBEDDED_STORAGE 在没有mysql的群集模式下使用嵌入式存储 embedded 默认值:无

3.创建数据库

下载执行脚本:

1)在GitHub上下:https://github.com/alibaba/nacos/releases,下载nacos-server-1.4.0.zip

在这里插入图片描述

2)把压缩包解压:有一个sql执行脚本,/conf/nacos-mysql.sql

在这里插入图片描述

3)创建数据库nacos_config并执行sql脚本

表结构如下:
在这里插入图片描述

3.启动nacos命令

在三台服务器上都启动,三台服务启动时候把--name nacos-1换一下,区分容器

docker run \
--restart=always \
--name nacos-1 \
-p 8848:8848 \
--env MODE=cluster \
--env NACOS_SERVERS=192.168.56.102:8848,192.168.56.105:8848,192.168.56.106:8848 \
--env SPRING_DATASOURCE_PLATFORM=mysql \
--env MYSQL_SERVICE_HOST=192.168.56.102 \
--env MYSQL_SERVICE_PORT=3306 \
--env MYSQL_SERVICE_DB_NAME=nacos_config \
--env MYSQL_SERVICE_USER=root \
--env MYSQL_SERVICE_PASSWORD=root \
--env JVM_XMS=512m \
--env JVM_XMX=512m \
--env JVM_XMN=256m \
-v /usr/local/docker/nacos/logs:/home/nacos/logs \
-v /usr/local/docker/nacos/data:/home/nacos/data \
-v /usr/local/docker/nacos/conf:/home/nacos/init.d \
-d nacos/nacos-server:1.4.0 

如果NACOS_SERVERS不想配置IP,可以换成 hostname,增加参数
前提还有docker swarm集群搭建好,不然无法识别nacos-1,nacos-2,nacos-3

--hostname nacos-1 \
--env NACOS_SERVERS=nacos-1:8848,nacos-2:8848,nacos-3:8848 \

查看日志是否启动成功:

cat /usr/local/docker/nacos/logs/nacos.log

日志展示:INFO Nacos started successfully in cluster mode. use external storage就是成功了

202-12-09 09:38:59,565 INFO Tomcat started on port(s): 8848 (http) with context path '/nacos'
2020-12-09 09:38:59,569 INFO Started Nacos in 10.311 seconds (JVM running for 11.532)
2020-12-09 09:38:59,569 INFO Nacos Log files: /home/nacos/logs
2020-12-09 09:38:59,570 INFO Nacos Log files: /home/nacos/conf
2020-12-09 09:38:59,570 INFO Nacos Log files: /home/nacos/data
2020-12-09 09:38:59,570 INFO Nacos started successfully in cluster mode. use external storage

4.访问nacos

http://192.168.56.102:8848/nacos/index.html
在集群管理的节点列表里,可以看到每个节点情况
Linux之docker安装部署nacos集群_第1张图片

你可能感兴趣的:(Linux,docker,linux,centos,nacos)