Upgrade Milvus Standalone with Docker Compose

This guide describes how to upgrade your Milvus standalone deployment from v2.5.x to v3.0-beta using Docker Compose.

Before you start

What’s new in v3.0-beta

Upgrading from Milvus 2.5.x to 3.0-beta involves significant architectural changes:

  • Coordinator consolidation: Legacy separate coordinators (dataCoord, queryCoord, indexCoord) have been consolidated into a single mixCoord
  • New components: Introduction of Streaming Node for enhanced data processing
  • Component removal: indexNode removed and consolidated

This upgrade process ensures proper migration to the new architecture. For more information on architecture changes, refer to Milvus Architecture Overview.

Requirements

System requirements:

  • Docker and Docker Compose installed
  • Milvus standalone deployed via Docker Compose

Compatibility requirements:

  • Milvus v2.6.0-rc1 is not compatible with v3.0-beta. Direct upgrades from release candidates are not supported.
  • If you are currently running v2.6.0-rc1 and need to preserve your data, please refer to this community guide for migration assistance.
  • You must upgrade to v2.5.16 or later before upgrading to v3.0-beta.

Message Queue limitations: When upgrading to Milvus v3.0-beta, you must maintain your current message queue choice. Switching between different message queue systems during the upgrade is not supported. Support for changing message queue systems will be available in future versions.

Due to security concerns, Milvus upgrades its MinIO to RELEASE.2024-12-18T13-15-44Z with the release of v3.0-beta.

Upgrade process

Step 1: Upgrade to v2.5.16

Skip this step if your standalone deployment is already running v2.5.16 or higher.

  1. Edit your existing docker-compose.yaml file and update the Milvus image tag to v2.5.16:

    ...
    standalone:
      container_name: milvus-standalone
      image: milvusdb/milvus:v2.5.16
    ...
    
  2. Apply the upgrade to v2.5.16:

    docker compose down
    docker compose up -d
    
  3. Verify the v2.5.16 upgrade:

    docker compose ps
    

Step 2: Upgrade to v3.0-beta

Once v2.5.16 is running successfully, upgrade to v3.0-beta:

  1. Edit your existing docker-compose.yaml file and update both the Milvus and MinIO image tags:

    ...
    minio:
      container_name: milvus-minio
      image: minio/minio:RELEASE.2024-12-18T13-15-44Z
    
    ...
    standalone:
      container_name: milvus-standalone
      image: milvusdb/milvus:v3.0-beta
    
  2. Apply the final upgrade:

    docker compose down
    docker compose up -d
    

Verify the upgrade

Confirm your standalone deployment is running the new version:

# Check container status
docker compose ps

# Check Milvus version
docker compose logs standalone | grep "version"

What’s next