本地使用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 分配。

相关推荐
jieyucx3 小时前
Docker 入门第一阶段:建立正确认知与初体验
运维·docker·容器
jieyucx5 小时前
Docker 入门第二阶段:掌握日常命令
运维·docker·容器
有毒的教程6 小时前
Kubernetes进阶实战教程(生产落地完整版)
云原生·容器·kubernetes
鱼听禅7 小时前
Ubuntu学习笔记-安装docker容器
学习·ubuntu·docker
不会C语言的男孩8 小时前
Docker 在嵌入式设备中的常用玩法
运维·docker·容器
白日焰火18 小时前
Redis 哨兵搭建+ACL权限控制
linux·docker·kubernetes
weixin_307779139 小时前
Linux下Docker Compose里运行的MySQL数据库故障诊断Shell脚本
linux·运维·mysql·docker·自动化
h3guang Official11 小时前
K8s安全实战:从漏洞靶场到红蓝对抗
安全·容器·kubernetes
nuo53420211 小时前
基础 3 —— Docker 的常用命令
docker·容器
oushaojun213 小时前
deepseek教我什么是docker
运维·docker·容器