Eseguire Milvus con Docker Compose (Linux)
Questa pagina illustra come avviare un'istanza di Milvus in Docker utilizzando Docker Compose.
Prerequisiti
- Installare Docker.
- Verificare i requisiti hardware e software prima dell'installazione.
Installare Milvus
Milvus mette a disposizione un file di configurazione Docker Compose nel repository di Milvus. Per installare Milvus utilizzando Docker Compose, è sufficiente eseguire
# Download the configuration file
$ wget https://github.com/milvus-io/milvus/releases/download/v3.0.3/milvus-standalone-docker-compose.yaml -O docker-compose.yaml
# Start Milvus
$ sudo docker compose up -d
Creating milvus-etcd ... done
Creating milvus-minio ... done
Creating milvus-standalone ... done
Distribuzione predefinita (v3.0.3): docker compose up -d avvia tre container — milvus-etcd (metadati), milvus-minio (object storage) e milvus-standalone. La coda dei messaggi è Woodpecker (integrata, con MinIO / object storage come backend WAL), quindi non è necessario un container separato per la coda dei messaggi.
Coda di messaggi predefinita in base alla versione:
- 2.5.x — la coda dei messaggi predefinita è RocksMQ.
- 2.6.x e successive — la coda di messaggi predefinita è Woodpecker (integrata).
Scarica sempre la configurazione Docker Compose più recente per garantire la compatibilità con le funzionalità della versione 3.0.3.
Se non sei riuscito a eseguire il comando sopra indicato, verifica se sul tuo sistema è installato Docker Compose V1. In tal caso, ti consigliamo di migrare a Docker Compose V2 in base alle indicazioni riportate in questa pagina.
Se si riscontrano problemi durante il download dell’immagine, contattarci all’indirizzo community@zilliz.com fornendo i dettagli del problema e forniremo l’assistenza necessaria.
Dopo l’avvio di Milvus,
- i container denominati milvus-standalone, milvus-minio e milvus-etcd sono attivi.
- Il container milvus-etcd non espone alcuna porta all’host e mappa i propri dati nella cartella volumes/etcd all’interno della cartella corrente.
- Il container milvus-minio serve localmente le porte 9000 e 9001 con le credenziali di autenticazione predefinite e mappa i propri dati nella cartella volumes/minio nella directory corrente.
- Il container milvus-standalone serve localmente le porte 19530 con le impostazioni predefinite e mappa i propri dati nella cartella volumes/milvus nella directory corrente.
È possibile verificare se i container sono attivi e in esecuzione utilizzando il seguente comando:
$ 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
È inoltre possibile accedere all’interfaccia web di Milvus all’indirizzo http://127.0.0.1:9091/webui/ per ottenere ulteriori informazioni sull’istanza di Milvus in uso. Per i dettagli, consultare la documentazione relativa all’interfaccia web di Milvus.
(Facoltativo) Aggiornamento delle configurazioni di Milvus
Per aggiornare la configurazione di Milvus in base alle proprie esigenze, è necessario modificare il file /milvus/configs/user.yaml all’interno del container milvus-standalone.
Accedere al container
milvus-standalone.docker exec -it milvus-standalone bashAggiungere ulteriori configurazioni per sovrascrivere quelle predefinite. Quanto segue presuppone che sia necessario sovrascrivere il file
proxy.healthCheckTimeoutpredefinito. Per le voci di configurazione applicabili, fare riferimento alla sezione Configurazione di sistema.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 EOFRiavviare il contenitore
milvus-standaloneper applicare le modifiche.docker restart milvus-standalone
Arresta ed elimina Milvus
È possibile arrestare ed eliminare questo container come segue
# Stop Milvus
$ sudo docker compose down
# Delete service data
$ sudo rm -rf volumes
Aggiornamento da Milvus 2.5.x a 2.6.x
Limiti della coda dei messaggi: durante l’aggiornamento a Milvus v3.0.3, è necessario mantenere la coda dei messaggi attualmente in uso. Il passaggio tra diversi sistemi di code dei messaggi durante l’aggiornamento non è supportato. Il supporto per la modifica dei sistemi di code dei messaggi sarà disponibile nelle versioni future.
Poiché la versione 2.6.x imposta Woodpecker come coda di messaggi predefinita, un'istanza che esegue RocksMQ sulla versione 2.5.x deve fissare esplicitamente RocksMQ prima dell'aggiornamento; in caso contrario, l'aggiornamento tenterebbe di modificare la coda di messaggi, operazione non supportata. Dopo aver scaricato il file Docker Compose della versione 2.6.x, reimpostare il tipo di coda dei messaggi su rocksmq nel file di override user.yaml, quindi eseguire l’aggiornamento:
# user.yaml — keep RocksMQ across the 2.5.x → 2.6.x upgrade
mq:
type: rocksmq
Per cambiare la coda dei messaggi dopo l’aggiornamento, consultare la sezione " Cambiare la coda dei messaggi".
Dipendenze opzionali
Questa distribuzione utilizza Woodpecker (integrato, backend WAL MinIO) per la messaggistica, etcd per i metadati e MinIO per l’archiviazione a oggetti. Per utilizzare una coda di messaggi diversa o collegare un sistema di archiviazione a oggetti/metadati esterno, consultare:
- Coda dei messaggi: Woodpecker (predefinita) · Pulsar · Kafka · RocksMQ
- Archiviazione a oggetti: MinIO (predefinito) · AWS S3 · Azure Blob · GCP Cloud Storage · Aliyun OSS · Tencent COS · Huawei OBS · Compatibile con S3
- Metadati: etcd
Storage V3 è disabilitato per impostazione predefinita. Abilitalo prima di utilizzare le funzionalità che ne dipendono. Per i requisiti e le considerazioni sulla compatibilità, consulta Storage V3.
Prossimi passi
Dopo aver installato Milvus in Docker, è possibile:
Consultare la Guida rapida per scoprire cosa può fare Milvus.
Imparare le operazioni di base di Milvus:
Distribuisci il tuo cluster Milvus su cloud:
Scopri Milvus WebUI, un'interfaccia web intuitiva per il monitoraggio e la gestione di Milvus.
Scopri Milvus Backup, uno strumento open source per il backup dei dati di Milvus.
Scopri Birdwatcher, uno strumento open source per il debug di Milvus e gli aggiornamenti dinamici della configurazione.
Scopri Attu, uno strumento GUI open source per una gestione intuitiva di Milvus.