本地使用docker-compse搭建nacos集群

使用 Docker Compose 搭建 Nacos 集群是一种非常方便且常见的方法,特别是在开发和测试环境中。下面是一个基本的 Docker Compose 配置文件示例,用于在单台机器上部署一个 Nacos 集群。这个示例配置会启动三个 Nacos 实例,使它们相互之间能够发现并形成一个集群。

前提条件

  • 确保已经安装了 Docker 和 Docker Compose。

步骤

1. 创建 Docker Compose 文件

首先,创建一个名为 docker-compose.yml 的文件,内容如下:

yaml 复制代码
version: '3'
services:
  nacos1:
    image: nacos/nacos-server
    environment:
      - PREFER_HOST_MODE=hostname
      - NACOS_REPLICAS=3
      - NACOS_SERVERS=nacos1:8848 nacos2:8848 nacos3:8848
      - SPRING_DATASOURCE_PLATFORM=mysql
      - MYSQL_SERVICE_HOST=mysql
      - MYSQL_SERVICE_DB_NAME=nacos
      - MYSQL_SERVICE_PORT=3306
      - MYSQL_SERVICE_USER=nacos
      - MYSQL_SERVICE_PASSWORD=nacos
    ports:
      - "8848:8848"
      - "9555:9555"
    depends_on:
      - mysql

  nacos2:
    image: nacos/nacos-server
    environment:
      - PREFER_HOST_MODE=hostname
      - NACOS_REPLICAS=3
      - NACOS_SERVERS=nacos1:8848 nacos2:8848 nacos3:8848
      - SPRING_DATASOURCE_PLATFORM=mysql
      - MYSQL_SERVICE_HOST=mysql
      - MYSQL_SERVICE_DB_NAME=nacos
      - MYSQL_SERVICE_PORT=3306
      - MYSQL_SERVICE_USER=nacos
      - MYSQL_SERVICE_PASSWORD=nacos
    ports:
      - "8849:8848"

  nacos3:
    image: nacos/nacos-server
    environment:
      - PREFER_HOST_MODE=hostname
      - NACOS_REPLICAS=3
      - NACOS_SERVERS=nacos1:8848 nacos2:8848 nacos3:8848
      - SPRING_DATASOURCE_PLATFORM=mysql
      - MYSQL_SERVICE_HOST=mysql
      - MYSQL_SERVICE_DB_NAME=nacos
      - MYSQL_SERVICE_PORT=3306
      - MYSQL_SERVICE_USER=nacos
      - MYSQL_SERVICE_PASSWORD=nacos
    ports:
      - "8850:8848"

  mysql:
    image: mysql:5.7
    environment:
      MYSQL_ROOT_PASSWORD: root
      MYSQL_DATABASE: nacos
      MYSQL_USER: nacos
      MYSQL_PASSWORD: nacos
    ports:
      - "3306:3306"
    command:
      --default-authentication-plugin=mysql_native_password
      --character-set-server=utf8
      --collation-server=utf8_unicode_ci
      --explicit-defaults-for-timestamp=1
    volumes:
      - ./mysql:/var/lib/mysql

networks:
  default:
    external:
      name: nacos-net
2. 创建网络

如果网络 nacos-net 不存在,你需要创建它,以确保所有容器都在同一个网络中互相通信。

bash 复制代码
docker network create nacos-net
3. 启动 Docker Compose

在包含 docker-compose.yml 文件的目录中运行以下命令:

bash 复制代码
docker-compose up -d

这个命令将启动定义在 docker-compose.yml 文件中的所有服务。

验证集群状态

一旦容器启动,你可以通过浏览器访问以下任一地址来检查 Nacos 的管理界面:

默认的用户名和密码通常是 nacos

这就完成了使用 Docker Compose 在单台机器上搭建 Nacos 集群的过程。确保你的机器有足够的资源来运行多个容器。如果需要,你可以根据实际情况调整内存和 CPU 分配。

相关推荐
Java陈序员2 小时前
再见 Navicat!一款开源的 Web 数据库管理工具!
java·react.js·docker
MickeyCV14 小时前
使用Docker部署MySQL&Redis容器与常见命令
redis·mysql·docker·容器·wsl·镜像
棠十一14 小时前
Rabbitmq
分布式·docker·rabbitmq
藥瓿亭15 小时前
K8S认证|CKS题库+答案| 6. 创建 Secret
运维·ubuntu·docker·云原生·容器·kubernetes·cks
2302_8097983215 小时前
【JavaWeb】Docker项目部署
java·运维·后端·青少年编程·docker·容器
嵌入式大圣15 小时前
Neko虚拟浏览器远程协作方案:Docker+内网穿透技术部署实践
运维·docker·容器
孔令飞16 小时前
Kubernetes 节点自动伸缩(Cluster Autoscaler)原理与实践
ai·云原生·容器·golang·kubernetes
极简网络科技17 小时前
Docker、Wsl 打包迁移环境
运维·docker·容器
杨浦老苏17 小时前
轻量级Docker管理工具Docker Switchboard
运维·docker·群晖
江湖有缘17 小时前
【Docker管理工具】部署Docker可视化管理面板Dpanel
运维·docker·容器