Eseguire Milvus in Docker (Windows)
Questa pagina mostra come eseguire Milvus su Windows utilizzando Docker Desktop per Windows.
Prerequisiti
Installare Python 3.8+.
Eseguire Milvus in Docker
Milvus fornisce uno script di installazione per installarlo come contenitore Docker. Dopo aver installato Docker Desktop su Microsoft Windows, è possibile accedere alla CLI di Docker da PowerShell o dal Prompt dei comandi di Windows in modalità amministratore e da WSL 2.
Da PowerShell o dal Prompt dei comandi di Windows
Se avete più familiarità con PowerShell o il Prompt dei comandi di Windows, il prompt dei comandi è il seguente.
Aprire Docker Desktop in modalità amministratore facendo clic con il pulsante destro del mouse e selezionando Esegui come amministratore.
Scaricare lo script di installazione e salvarlo come
standalone.bat
.C:\>Invoke-WebRequest https://github.com/milvus-io/milvus/blob/master/scripts/standalone_embed.bat -OutFile standalone.bat
Eseguire lo script scaricato per avviare Milvus come contenitore Docker.
C:\>standalone.bat start Wait for Milvus starting... Start successfully. To change the default Milvus configuration, edit user.yaml and restart the service.
Dopo aver eseguito lo script di installazione.
È stato avviato un contenitore Docker chiamato milvus-standalone sulla porta 19530.
Un embed etcd è installato insieme a Milvus nello stesso contenitore e serve alla porta 2379. Il suo file di configurazione è mappato su embedEtcd.yaml nella cartella corrente.
Il volume di dati di Milvus è mappato su volumes/milvus nella cartella corrente.
È possibile utilizzare i seguenti comandi per gestire il contenitore Milvus e i dati memorizzati.
# Stop Milvus C:\>standalone.bat stop Stop successfully. # Delete Milvus container C:\>standalone.bat delete Delete Milvus container successfully. # Container has been removed. Delete successfully. # Data has been removed.
Da WSL 2
Se si preferisce avviare Milvus utilizzando i comandi Linux e gli script di shell su Windows, assicurarsi di aver già installato il comando WSL 2. Per i dettagli su come installare il comando WSL 2, potete consultare questo articolo di Microsoft.
Avviare WSL 2.
C:\>wsl --install Ubuntu already installed. Starting Ubuntu...
Scaricare lo script di installazione
# Download the installation script $ curl -sfL https://raw.githubusercontent.com/milvus-io/milvus/master/scripts/standalone_embed.sh -o standalone_embed.sh # Start the Docker container $ bash standalone_embed.sh start
Avviare Milvus come contenitore docker.
$ bash standalone_embed.sh start Wait for Milvus Starting... Start successfully. To change the default Milvus configuration, add your settings to the user.yaml file and then restart the service.
È possibile utilizzare i seguenti comandi per gestire il contenitore Milvus e i dati memorizzati.
# Stop Milvus $ bash standalone_embed.sh stop Stop successfully. # Delete Milvus data $ bash standalone_embed.sh stop Delete Milvus container successfully. Delete successfully.
Eseguire Milvus con Docker Compose
Una volta installato Docker Desktop su Microsoft Windows, è possibile accedere alla CLI di Docker da PowerShell o dal Prompt dei comandi di Windows in modalità amministratore. È possibile eseguire Docker Compose in PowerShell, nel Prompt dei comandi di Windows o in WSL 2 per avviare Milvus.
Da PowerShell o dal Prompt dei comandi di Windows
Aprire Docker Desktop in modalità amministratore facendo clic con il pulsante destro del mouse e selezionando Esegui come amministratore.
Eseguite i seguenti comandi in PowerShell o nel Prompt dei comandi di Windows per scaricare il file di configurazione di Docker Compose per Milvus Standalone e avviare Milvus.
# Download the configuration file and rename it as docker-compose.yml C:\>Invoke-WebRequest https://github.com/milvus-io/milvus/releases/download/v2.4.15/milvus-standalone-docker-compose.yml -OutFile docker-compose.yml # Start Milvus C:\>docker compose up -d Creating milvus-etcd ... done Creating milvus-minio ... done Creating milvus-standalone ... done
A seconda della connessione di rete, il download delle immagini per l'installazione di Milvus potrebbe richiedere un po' di tempo. Una volta che i contenitori denominati milvus-standalone, milvus-minio e milvus-etcd sono attivi, si può notare che
Il contenitore milvus-etcd non espone alcuna porta all'host e mappa i suoi dati nei volumi/etcd della cartella corrente.
Il contenitore milvus-minio serve le porte 9090 e 9091 localmente con le credenziali di autenticazione predefinite e mappa i suoi dati su volumi/minio nella cartella corrente.
Il contenitore milvus-standalone serve localmente le porte 19530 con le impostazioni predefinite e mappa i suoi dati su volumi/milvus nella cartella corrente.
È inoltre possibile richiamare la versione Linux dei comandi di Docker Compose se si dispone di WSL 2.
Da WSL 2
La procedura è simile a quella dell'uso di Docker Compose per installare Milvus nei sistemi Linux.
Avviare WSL 2.
C:\>wsl --install Ubuntu already installed. Starting Ubuntu...
Scaricare il file di configurazione di Milvus.
$ wget https://github.com/milvus-io/milvus/releases/download/v2.4.17/milvus-standalone-docker-compose.yml -O docker-compose.yml
Avviare Milvus.
$ sudo docker compose up -d Creating milvus-etcd ... done Creating milvus-minio ... done Creating milvus-standalone ... done
Domande frequenti
Come posso risolvere l'errore Docker Engine stopped
?
Una volta installato Docker Desktop in Windows, si può verificare l'errore Docker Engine stopped
se il computer non è configurato correttamente. In questo caso, potrebbe essere necessario effettuare i seguenti controlli.
Controllare se la virtualizzazione è abilitata.
È possibile verificare se la virtualizzazione è abilitata guardando la scheda Prestazioni in Task Manager.
Virtualizzazione in Task Manager
Se la virtualizzazione è disabilitata, potrebbe essere necessario controllare le impostazioni del BIOS del firmware della scheda madre. Il modo di abilitare la virtualizzazione nelle impostazioni del BIOS varia a seconda dei produttori di schede madri. Per la scheda madre ASUS, ad esempio, è possibile fare riferimento a questo articolo sull'abilitazione della virtualizzazione.
Quindi, è necessario riavviare il computer e abilitare Hyper-V. Per i dettagli, consultare questo articolo di Microsoft.
Controllare se il servizio Docker Desktop è stato avviato.
È possibile eseguire il seguente comando per avviare il servizio Docker Desktop.
C:\>net start com.docker.service The Docker for Windows Service service is starting. The Docker for Windows Service service was started successfully.
Controllare se WSL è stato installato correttamente.
È possibile eseguire il seguente comando per installare o aggiornare il comando WSL 2.
C:\>wsl --update Checking for updates. The most recent version of Windows Subsystem for Linux is already installed.
Controllare se il demone Docker è stato avviato.
È necessario andare nella directory di installazione di Docker Desktop ed eseguire
.\DockerCli.exe -SwitchDaemon
per avviare Docker Daemon.C:\>cd "C:\Program Files\Docker\Docker" C:\Program Files\Docker\Docker>.\DockerCli.exe -SwitchDaemon Switching to windows engine: Post "http://ipc/engine/switch": open \\.\pipe\dockerBackendApiServer: The system cannot find the file specified.
Verificare se Docker Desktop è stato avviato in modalità amministratore.
Assicurarsi di aver avviato Docker Desktop in modalità amministratore. Per farlo, fate clic con il pulsante destro del mouse su Docker Desktop e scegliete Esegui come amministratore.
Avviare Docker Desktop come amministratore
Come posso risolvere i problemi legati al WSL durante la distribuzione di Milvus?
Se avete riscontrato problemi legati a WSL durante l'esecuzione di Milvus da WSL 2, potreste dover verificare se avete configurato Docker Desktop per utilizzare il motore basato su WSL 2 come segue.
Assicurarsi che "Usa il motore basato su WSL 2" sia selezionato in Impostazioni > Generale.
Utilizzare il motore basato su WSL 2 in Impostazioni di Docker Desktop
Selezionate tra le distribuzioni WSL 2 installate quella su cui volete abilitare l'integrazione di Docker andando in: Impostazioni > Risorse > Integrazione WSL.
Selezionate le distribuzioni WSL 2 nelle impostazioni di Docker Desktop .
Come posso gestire gli errori relativi al volume che vengono visualizzati durante l'avvio di Milvus che legge Read config failed
?
Errore di lettura della configurazione fallito all'avvio di Milvus
Per risolvere l'errore visualizzato all'avvio di Milvus, che recita "Read config failed", è necessario verificare se il volume montato nel contenitore Milvus è corretto. Se il volume è montato correttamente nel contenitore, si può usare il comando docker exec
per entrare nel contenitore ed elencare la cartella /milvus/configs come segue.
Elenco dei file di configurazione di Milvus