SoFunction
Updated on 2025-03-10

How to quickly start a Nacos cluster using Docker

Nacos is an easy-to-use platform for dynamic service discovery, configuration management, and service management. It helps you quickly build cloud-native applications in a cloud environment, supporting services registration and discovery, dynamic configuration updates and other functions. In this article, we will explain how to quickly start a Nacos cluster using Docker.

Why start Nacos with Docker?

  • Rapid deployment: Docker containers can be started in seconds, speeding up deployment.
  • Environmental consistency: Containerization ensures consistency between development, testing and production environments.
  • Resource Isolation: Each container is isolated from each other, which helps avoid resource conflicts.
  • Easy to expand: Docker containers can be easily scaled and replicated, suitable for building large-scale service clusters.

Preparation

Before you begin, make sure you have Docker and Docker Compose installed. Docker Compose is a tool for defining and running multi-container Docker applications.

Step 1: Pull the Nacos image

Nacos officially provides Docker images that you can pull directly from Docker Hub. Open your command line tool and execute the following command:

docker pull nacos/nacos-server

This command will download the latest Nacos image from Docker Hub to your local area.

Step 2: Create a Nacos cluster configuration file

Create a name calledThe Docker Compose configuration file, the content is as follows:

services:
  nacos1:
    image: nacos/nacos-server:latest
    container_name: nacos1
    ports:
      - "8848:8848"
    environment:
      - MODE=cluster
      - SPRING_DATASOURCE_PLATFORM=mysql
      - MYSQL_SERVICE_HOST=nacos-mysql
      - MYSQL_SERVICE_DB_NAME=nacos
      - MYSQL_SERVICE_PORT=23306
      - MYSQL_SERVICE_USER=nacos
      - MYSQL_SERVICE_PASSWORD=nacos
    volumes:
      - ./cluster-1/conf:/home/nacos/conf
      - ./cluster-1/logs:/home/nacos/logs
    depends_on:
      - mysql
  nacos2:
    image: nacos/nacos-server:latest
    container_name: nacos2
    ports:
      - "8849:8848"
    environment:
      - MODE=cluster
      - SPRING_DATASOURCE_PLATFORM=mysql
      - MYSQL_SERVICE_HOST=nacos-mysql
      - MYSQL_SERVICE_DB_NAME=nacos
      - MYSQL_SERVICE_PORT=23306
      - MYSQL_SERVICE_USER=nacos
      - MYSQL_SERVICE_PASSWORD=nacos
    volumes:
      - ./cluster-2/conf:/home/nacos/conf
      - ./cluster-2/logs:/home/nacos/logs
    depends_on:
      - mysql
  mysql:
    image: mysql:5.7
    container_name: nacos-mysql
    environment:
      - MYSQL_DATABASE=nacos
      - MYSQL_ROOT_PASSWORD=nacos
      - MYSQL_SERVICE_DB_NAME=nacos
      - MYSQL_SERVICE_USER=nacos
      - MYSQL_SERVICE_PASSWORD=nacos
    ports:
      - "23306:3306"
    volumes:
      - ./mysql:/var/lib/mysql
networks:
  nacos_cluster_network:
    driver: bridge

This configuration file defines two Nacos service instances and one MySQL instance to store Nacos data.

Step 3: Start the Nacos cluster

existIn the directory where the file is located, run the following command to start the Nacos cluster:

docker-compose -f  up -d

This command will start all definitionsServices in.

Step 4: Verify the Nacos cluster

To check if your Nacos cluster starts successfully, you can use the following command:

docker-compose -f  ps

This command lists all running services. You should be able to seenacos1nacos2andmysqlThe services are all running.

Step 5: Access the Nacos console

Open your browser and visithttp://localhost:8848/nacosorhttp://localhost:8849/nacos. You should see the Nacos console.

Step 6: Stop and delete the Nacos cluster

When you complete the test, you can stop and delete the Nacos cluster using the following command:

docker-compose -f  down

Summarize

Starting a Nacos cluster with Docker and Docker Compose is a fast and efficient way to enable you to test and run Nacos services in an isolated environment and be accessible from the outside. By following the steps above, you can easily deploy a Nacos cluster on your local machine or server.

Further reading

Nacos official documentation

Docker Compose official documentation

This is the end of this article about using Docker to quickly start Nacos cluster. For more related content on Docker to start Nacos cluster, please search for my previous articles or continue browsing the related articles below. I hope everyone will support me in the future!