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

相关推荐
苏渡苇1 小时前
5 分钟跑起 Redis(Docker 版)
数据库·redis·缓存·docker·redis入门
深念Y3 小时前
赛米尼M02/海纳斯HiNAS系统-WiFi驱动安装教程
运维·服务器·网络·docker·nas·机顶盒·hinas
小义_4 小时前
【Kubernetes】(五) pod2
linux·云原生·容器·kubernetes
刘某的Cloud4 小时前
docker commit 封装镜像
运维·docker·容器·image
古城小栈5 小时前
Docker 下配置 Pgsql 主从复制详细步骤指南
运维·docker·容器
雨奔5 小时前
Kubernetes 对象标识详解:Name、UID、Label
云原生·容器·kubernetes
何中应6 小时前
Docker-Compose环境配置&使用
运维·docker·容器
heimeiyingwang7 小时前
【无标题】
网络·缓存·docker·性能优化·架构
牛奶咖啡138 小时前
Docker容器实践——docker部署应用系统
docker·云计算·portainer·docker容器的使用流程·docker虚拟化云桌面·nginx可视化反向代理工具·构建服务器监控探针
说实话起个名字真难啊8 小时前
Docker 入门之单机常用命令总结
docker·容器·eureka