使用docker部署nacos分布式集群

本文目的

  • 在服务器中部署nacos集群,并连接外置数据库
  • 关于外置的mysql部署和单例nacos如何部署请看下面的两个链接
如何使用docker部署mysql

docker部署容器化mysql5.7-CSDN博客

如何使用docker部署nacos

容器化部署Nacos:从环境准备到启动-CSDN博客

准备

  • 下载docker版本的nacos
git clone https://github.com/nacos-group/nacos-docker.git
  • 在example文件夹下找到cluster-hostname.yaml
    对其中内容进行修改:(下面有对修改的解释)
version: "3.8"
services:
  nacos1:
    hostname: nacos1
    container_name: nacos1
    image: nacos/nacos-server:v2.2.1
    volumes:
      - ./cluster-logs/nacos1:/home/nacos/logs
    ports:
      - "7848:7848"
      - "8848:8848"
      - "9868:9848"
      - "9850:9849"
    env_file:
      - ../env/nacos-hostname.env
    restart: always
    networks:
      - rdt-network

  nacos2:
    hostname: nacos2
    image: nacos/nacos-server:v2.2.1
    container_name: nacos2
    volumes:
      - ./cluster-logs/nacos2:/home/nacos/logs
    ports:
      - "7850:7848"
      - "8850:8848"
      - "9870:9848"
      - "9852:9849"
    env_file:
      - ../env/nacos-hostname.env
    restart: always
    networks:
      - rdt-network
  nacos3:
    hostname: nacos3
    image: nacos/nacos-server:v2.2.1
    container_name: nacos3
    volumes:
      - ./cluster-logs/nacos3:/home/nacos/logs
    ports:
      - "7852:7848"
      - "8852:8848"
      - "9872:9848"
      - "9854:9849"
    env_file:
      - ../env/nacos-hostname.env
    restart: always
    networks:
      - rdt-network
networks:
  rdt-network:
    external: true

对修改的解释:
  • 删除部署mysql的内容,因为我们使用的是外置的mysql
  • 添加了networks的选项,这个docker网络是我自己创建的,目的是让三个nacos和mysql都在同一个docker网络内
# 列出所有docker网络
docker network ls
# 检查网络详情
docker network inspect <network-name>
# 检查容器详情
docker inspect <container-name-or-id>
# 创建一个新的网络
docker network create rdt-network
# 连接现有容器到新网络
docker network connect rdt-network mysql57
  • 修订为自己要的nacos版本
image: nacos/nacos-server:v2.2.1

修改环境文件

  • nacos1、2、3都使用这个环境文件
    env_file:
      - ../env/nacos-hostname.env
  • 将nacos-hostname.yml修改为如下内容
PREFER_HOST_MODE=hostname
# 修改成这样它们就能互相发现了 因为三个容器的端口映射都映射到了8848
NACOS_SERVERS=nacos1 nacos2 nacos3
SPRING_DATASOURCE_PLATFORM=mysql
MYSQL_SERVICE_HOST=mysql57
# 我创建nacos试用的数据库时名字是nacos_config 可以根据你的需求更改
MYSQL_SERVICE_DB_NAME=nacos_config
# 你的mysql的端口、用户名、密码
MYSQL_SERVICE_PORT=3306
MYSQL_SERVICE_USER=root
MYSQL_SERVICE_PASSWORD=ur_password
MYSQL_SERVICE_DB_PARAM=characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useSSL=false&allowPublicKeyRetrieval=true
NACOS_AUTH_IDENTITY_KEY=2222
NACOS_AUTH_IDENTITY_VALUE=2xxx
NACOS_AUTH_TOKEN=SecretKey012345678901234567890123456789012345678901234567890123456789
数据库

这个链接有如何创建nacos数据库的内容
容器化部署Nacos:从环境准备到启动-CSDN博客

启动nacos集群

# 后台启动
docker-compose -f example/cluster-hostname.yaml up -d
# 查看容器运行情况(在nacos-docker文件目录内)
docker-compose logs nacos1
docker-compose logs nacos1
docker-compose logs nacos3

到nacos控制台检查运行情况,运行正确的话如图

在这里插入图片描述

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

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

相关文章

互联网医院系统:数字化时代中医疗服务的未来

随着数字化时代的发展&#xff0c;互联网医院系统在医疗服务中的作用日益凸显。本文将讨论互联网医院系统的一些关键技术方面&#xff0c;探讨这些技术如何推动医疗服务进入数字化时代。 1. 数据智能与个性化服务 互联网医院系统依赖于大数据分析和人工智能技术&#xff0c;…

android studio导入eclipse项目

网上下载一个老工程&#xff0c;.project文件里有eclipse。 android studio导入eclipse项目 eclipse项目结构 Android studio文件结构 下面是导入步骤&#xff1a; 第一步&#xff0c;打开一个项目。 选择File->New->Import Project 第二步&#xff0c;选择Eclipse项目根…

【LeetCode】每日一题 2023_11_16 最长奇偶子数组(枚举,模拟)

文章目录 刷题前唠嗑K 个元素的最大和题目描述代码与解题思路 结语 刷题前唠嗑 LeetCode? 启动&#xff01;&#xff01;&#xff01; 今天早上概率论期中&#xff0c;被爆杀完之后&#xff0c;下午数电&#xff0c;今天很疲惫很疲惫&#xff0c;一直拖到了现在&#xff0c;终…

70基于matlab的BP神经网络多输入单输出数据结果预测,输出结果包括均方根误差,决定系数

基于matlab的BP神经网络多输入单输出数据结果预测&#xff0c;输出结果包括均方根误差&#xff0c;决定系数。数据可更换自己的&#xff0c;程序已调通&#xff0c;可直接运行。 70 BP神经网络&#xff0c;时间序列预测 (xiaohongshu.com)https://www.xiaohongshu.com/explore/…

esp8266-01固件信息

除了NodeMCU固件&#xff0c;ESP8266芯片还可以使用其他固件&#xff0c;例如官方提供的Espressif Systems的AT固件&#xff0c;或者第三方开发者基于ESP8266芯片开发的其他固件。这些固件提供了不同的功能和编程接口&#xff0c;以满足不同的开发需求。 固件与底层硬件打交道…

11.11作业题

1.不死兔子 def fib(n):if n < 4:return 1else:return fib(n-1) fib(n-2) print("一年后共繁殖{}对兔子".format(fib(12))) 2.输入字符串&#xff0c;判断该字符串是否是回文字符串 s input("请输入一个字符串&#xff1a;") if not s:print("…

TVM编译入门概念 一

最近阅读到陈天奇的一篇文章&#xff0c;链接分享 21年底&#xff0c;他说在三年前也就是2018年左右就完成了基于多层优化的解决方案。 当把全栈解决方案搭建起来并且不断实践之后发现有两种隔阂阻碍整个行业的发展。做一些总结。 本文合适的受众是ai编译器相关的入门级选手或供…

巴菲特再度出手,清仓7家公司股票

KlipC报道&#xff1a;最新数据显示&#xff0c;伯克希尔第三季度总共清仓了7家公司的股份&#xff0c;其中包括动视暴雪、通用汽车、化工巨头塞拉尼斯、亿滋国际、强生、宝洁和联合包裹。 KlipC的合伙人Andi D表示&#xff1a;“此前最新的监管文件显示&#xff0c;伯克希尔哈…

Servlet---从创建项目到部署项目的整个流程

文章目录 创建项目引入Servlet依赖创建目录结构编写代码打包程序部署程序验证程序 创建项目 引入Servlet依赖 为什么需要引入依赖资源呢&#xff1f; Servlet不是标准库自带的&#xff0c;需要从外部引入进来才能使用。如何引入&#xff1f; 利用maven&#xff0c;maven的一个…

泛娱乐社交掀起2万亿市场热潮,Flat Ads独家流量助出海获客

作为产品/服务的提供方&#xff0c;中国企业在几乎所有海外市场&#xff0c;都算是强有力的参与者&#xff0c;在社交泛娱乐领域表现尤为突出。但不同于游戏、电商、工具等其他品类&#xff0c;我们几乎很难对社交泛娱乐下一个精准的的定义。因为随着技术进步、行业发展&#x…

机器视觉双目测宽仪 高温钢板实时无滞后检测

高温钢板在生产中的宽度尺寸检测有很多种方法&#xff0c;本来来介绍一下双目测宽仪&#xff0c;它同样能做到实时检测、超差提示、数据分析、信息存储等功能。 双目测宽仪采用两个工业相机从不同的角度对被测物同时进行测量&#xff0c;两个工业相机就像人的双眼&#xff0c;可…

Python接口自动化(什么是接口、接口优势、类型)

简介 经常听别人说接口测试&#xff0c;接口测试自动化&#xff0c;但是你对接口&#xff0c;有多少了解和认识&#xff0c;知道什么是接口吗&#xff1f;它是用来做什么的&#xff0c;测试时候要注意什么&#xff1f;坦白的说&#xff0c;笔者之前也不是很清楚。接下来先看一下…

appium自动化测试完整项目

前言 Appium是一个开源的自动化测试框架&#xff0c;支持跨平台&#xff0c;支持多种编程语言&#xff0c;可用于原生&#xff0c;混合和移动web应用程序&#xff0c;使用webdriver驱动ios&#xff0c;android应用程序、那么为了学习app自动化测试首要任务肯定就是搭建测试开发…

中小企业数字化的“下半场”,与华为的生态伙伴“引力场”

作者 | 曾响铃 文 | 响铃说 中小企业数字化始终是业界关注的重点&#xff0c;也催生了庞大的产业数字化价值空间等待挖掘&#xff0c;在如何推进这件事上&#xff0c;各方都在持续发力。 这其中&#xff0c;针对中小企业迫切需求&#xff0c;来自华为的动作正变得越来越紧凑…

echarts点击事件、柱状图设置区间颜色

实现echarts柱状图标记区域&#xff0c;并在单击柱状条时触发点击事件切换标记区域 //html <div id"main" style"width: 600px;height:400px;"></div>//js let _chart null; letselectInfo {};//选择的柱状条信息&#xff0c;可用于信息的获…

linux下安装python3.8(有坑)

1安装包下载 ###直接官网下载linux版本&#xff0c;找到对应的包 https://www.python.org/downloads/source/2安装包解压 tar -zxvf Python-3.8.0.tgz 3编译安装 1&#xff09;设置安装目录&#xff0c;比如在此创建在 /usr/local/python3 &#xff1a; mkdir -p /usr/loca…

解决计算机丢失msvcr71.dll问题,总结5种解决方法分享

由于各种原因&#xff0c;计算机在使用的过程中可能会出现一些问题&#xff0c;其中之一就是丢失msvcr71.dll文件。这个问题可能会导致计算机无法正常运行某些程序或功能&#xff0c;给我们的生活和工作带来困扰。那么&#xff0c;当我们遇到这个问题时&#xff0c;应该如何解决…

ROS 学习应用篇(七)ROS中的坐标变换管理之tf初探

坐标变化是机器人中很重要的内容&#xff0c;但是要是概括下来无非就是旋转和平移矩阵。 小海龟跟随实验 做的是两个小海龟之间的跟随&#xff0c;其实就相当于视觉设备和本体设备见有一定的位置差在ros平台下tf坐标变化的实验 首先安装海龟tf变换包 新开终端输入 sudo apt…

某个订单项目记录,涉及MQ消息处理、分布式问题、幂等性等问题解决设计

文章目录 消息队列&#xff08;Message Queue&#xff09;什么场景下&#xff0c;使用消息队列&#xff1f;消息队列 概述 RabbitMQ 消息队列RabbitMQ 概念名词 概念RabbitMQ 流程 RabbitMQ 安装RabbitMQ 页面介绍Exchange 交换机类型Spring Boot 整合RabbitMQAmqpAdmin 与 Rab…
最新文章