Milvus mit Docker Compose ausführen (Linux)

Auf dieser Seite wird erläutert, wie Sie eine Milvus-Instanz in Docker mithilfe von Docker Compose starten.

Voraussetzungen

Milvus installieren

Milvus stellt im Milvus-Repository eine Docker-Compose-Konfigurationsdatei bereit. Um Milvus mit Docker Compose zu installieren, führen Sie einfach folgenden Befehl aus

# Download the configuration file
$ wget https://github.com/milvus-io/milvus/releases/download/v3.0.0/milvus-standalone-docker-compose.yml -O docker-compose.yml

# Start Milvus
$ sudo docker compose up -d

Creating milvus-etcd  ... done
Creating milvus-minio ... done
Creating milvus-standalone ... done

Standardbereitstellung (v3.0.0):docker compose up -d “ startet drei Container – „ milvus-etcd “ (Metadaten), „ milvus-minio “ (Objektspeicher) und „ milvus-standalone “. Die Nachrichtenwarteschlange ist Woodpecker (eingebettet, mit MinIO/Objektspeicher als WAL-Backend), sodass kein separater Nachrichtenwarteschlangen-Container erforderlich ist.

Standard-Nachrichtenwarteschlange je nach Version:

  • 2.5.x – Standard-Nachrichtenwarteschlange ist RocksMQ.
  • 2.6.x und höher – Standard-Nachrichtenwarteschlange ist Woodpecker (eingebettet).

Laden Sie stets die aktuellste Docker-Compose-Konfiguration herunter, um die Kompatibilität mit den Funktionen von Version 3.0.0 sicherzustellen.

  • Falls die Ausführung des obigen Befehls fehlgeschlagen ist, überprüfen Sie bitte, ob auf Ihrem System Docker Compose V1 installiert ist. Ist dies der Fall, wird Ihnen aufgrund der Hinweise auf dieser Seite empfohlen, auf Docker Compose V2 umzusteigen.

  • Sollten beim Abrufen des Images Probleme auftreten, kontaktieren Sie uns bitte unter community@zilliz.com mit Details zum Problem, und wir werden Ihnen die erforderliche Unterstützung zukommen lassen.

Nach dem Start von Milvus

  • sind die Container mit den Namen „milvus-standalone“, „milvus-minio“ und „milvus-etcd“ aktiv.
    • Der Container „milvus-etcd“ stellt keine Ports für den Host bereit und ordnet seine Daten dem Verzeichnis „volumes/etcd“ im aktuellen Ordner zu.
    • Der Container „milvus-minio“ stellt lokal die Ports 9000 und 9001 mit den Standard-Anmeldedaten bereit und ordnet seine Daten dem Verzeichnis „volumes/minio“ im aktuellen Ordner zu.
    • Der Container „milvus-standalone“ stellt lokal die Ports 19530 mit den Standardeinstellungen bereit und ordnet seine Daten dem Verzeichnis „volumes/milvus“ im aktuellen Ordner zu.

Mit dem folgenden Befehl können Sie überprüfen, ob die Container aktiv und läuft sind:

$ docker compose ps

NAME                IMAGE   COMMAND                  SERVICE      CREATED         STATUS                   PORTS
milvus-etcd         …       "etcd -advertise-cli…"   etcd         2 minutes ago   Up 2 minutes (healthy)   2379-2380/tcp
milvus-minio        …       "/usr/bin/docker-ent…"   minio        2 minutes ago   Up 2 minutes (healthy)   9000-9001/tcp
milvus-standalone   …       "/tini -- milvus run…"   standalone   2 minutes ago   Up 2 minutes (healthy)   0.0.0.0:9091->9091/tcp, 0.0.0.0:19530->19530/tcp

Sie können auch über http://127.0.0.1:9091/webui/ auf die Milvus-WebUI zugreifen, um mehr über Ihre Milvus-Instanz zu erfahren. Weitere Informationen finden Sie unter Milvus-WebUI.

(Optional) Milvus-Konfigurationen aktualisieren

Um die Milvus-Konfiguration an Ihre Anforderungen anzupassen, müssen Sie die Datei „ /milvus/configs/user.yaml “ im Container „ milvus-standalone “ bearbeiten.

  1. Rufen Sie den Container „ milvus-standalone “ auf.

    docker exec -it milvus-standalone bash
    
  2. Fügen Sie zusätzliche Konfigurationen hinzu, um die Standardkonfigurationen zu überschreiben. Im Folgenden wird davon ausgegangen, dass Sie die Standardkonfiguration in „ proxy.healthCheckTimeout “ überschreiben müssen. Informationen zu den entsprechenden Konfigurationselementen finden Sie unter „Systemkonfiguration“.

    cat << EOF > /milvus/configs/user.yaml
    # Extra config to override default milvus.yaml
    proxy:
      healthCheckTimeout: 1000 # ms, the interval that to do component healthy check
    EOF
    
  3. Starten Sie den Container „ milvus-standalone “ neu, um die Änderungen zu übernehmen.

    docker restart milvus-standalone
    

Milvus anhalten und löschen

Sie können diesen Container wie folgt anhalten und löschen

# Stop Milvus
$ sudo docker compose down

# Delete service data
$ sudo rm -rf volumes

Upgrade von Milvus 2.5.x auf 2.6.x

Einschränkungen bei der Nachrichtenwarteschlange: Beim Upgrade auf Milvus v3.0.0 müssen Sie Ihre aktuelle Auswahl der Nachrichtenwarteschlange beibehalten. Ein Wechsel zwischen verschiedenen Nachrichtenwarteschlangensystemen während des Upgrades wird nicht unterstützt. Die Unterstützung für den Wechsel des Nachrichtenwarteschlangensystems wird in zukünftigen Versionen verfügbar sein.

Da in 2.6.x die Standard-Nachrichtenwarteschlange auf „Woodpecker“ umgestellt wird, muss eine Instanz, auf der unter 2.5.x „RocksMQ“ läuft, „RocksMQ“ vor dem Upgrade explizit festlegen – andernfalls würde das Upgrade versuchen, die Nachrichtenwarteschlange zu ändern, was nicht unterstützt wird. Nachdem Sie die Docker-Compose-Datei für 2.6.x heruntergeladen haben, setzen Sie den Typ der Nachrichtenwarteschlange in Ihrer „ user.yaml “-Überschreibung wieder auf „ rocksmq “ zurück und führen Sie dann das Upgrade durch:

# user.yaml — keep RocksMQ across the 2.5.x → 2.6.x upgrade
mq:
  type: rocksmq

Informationen zum Wechseln der Nachrichtenwarteschlange nach dem Upgrade finden Sie unter „MQ-Typ wechseln“.

Optionale Abhängigkeiten

Diese Bereitstellung nutzt Woodpecker (eingebettet, MinIO-WAL-Backend) für die Nachrichtenübermittlung, etcd für Metadaten und MinIO für den Objektspeicher. Informationen zur Verwendung einer anderen Nachrichtenwarteschlange oder zur Anbindung eines externen Objektspeichers bzw. externer Metadaten finden Sie unter:

Storage V3 ist standardmäßig deaktiviert. Aktivieren Sie es, bevor Sie Funktionen nutzen, die davon abhängen. Informationen zu Anforderungen und Kompatibilitätsaspekten finden Sie unter Storage V3.

Was kommt als Nächstes

Nachdem Sie Milvus in Docker installiert haben, können Sie:

Office Hours

Milvus Bürozeiten

Holen Sie sich Hilfe bei der Produktionsbereitstellung von Zilliz, den Experten für Milvus.

Buchen Sie eine kostenlose 1:1-Sitzung

Try Managed Milvus for Free

Zilliz Cloud is hassle-free, powered by Milvus and 10x faster.

Get Started
Feedback

War diese Seite hilfreich?