🚀 免費嘗試 Zilliz Cloud,完全托管的 Milvus,體驗速度提升 10 倍!立即嘗試

milvus-logo
LFAI
主頁
  • 開始使用
  • Home
  • Docs
  • 開始使用

  • 安裝 Milvus

  • 單機執行 Milvus

  • Docker 桌面 (Windows)

在 Docker 中執行 Milvus (Windows)

本頁面示範如何使用 Docker Desktop for Windows 在 Windows 上執行 Milvus。

先決條件

在 Docker 中執行 Milvus

Milvus 提供一個安裝腳本,可將其安裝為 Docker 容器。在 Microsoft Windows 上安裝 Docker Desktop 後,您可以從 PowerShell 或 Windows Command Prompt 以管理員模式以及 WSL 2 存取 Docker CLI。

從 PowerShell 或 Windows Command Prompt

如果您比較熟悉 PowerShell 或 Windows Command Prompt,命令提示符如下。

  1. 在管理員模式下開啟 Docker Desktop,方法是按滑鼠右鍵並選擇以管理員身分執行

  2. 下載安裝指令碼並儲存為standalone.bat

    C:\>Invoke-WebRequest https://raw.githubusercontent.com/milvus-io/milvus/refs/heads/master/scripts/standalone_embed.bat -OutFile standalone.bat
    
    
  3. 執行下載的腳本,以 Docker 容器啟動 Milvus。

    C:\>standalone.bat start
    Wait for Milvus starting...
    Start successfully.
    To change the default Milvus configuration, edit user.yaml and restart the service.
    
    

    執行安裝腳本後

    • 一個名為milvus-standalone的 docker 容器已經在19530 連接埠啟動。

    • 嵌入式 etcd 與 Milvus 安裝在同一個容器中,並在2379 連接埠提供服務。它的設定檔對應到目前資料夾中的embedEtcd.yaml。

    • Milvus 資料卷被對應到目前資料夾中的volumes/milvus

    您可以使用下列命令管理 Milvus 容器和儲存的資料。

    # 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.
    
    

從 WSL 2

如果您喜歡在 Windows 上使用 Linux 指令和 shell 腳本啟動 Milvus,請確保已經安裝了 WSL 2 指令。有關如何安裝 WSL 2 指令的詳細資訊,您可以參考這篇微軟文章

  1. 啟動 WSL 2。

    C:\>wsl --install
    Ubuntu already installed.
    Starting Ubuntu...
    
    
  2. 下載安裝腳本

    # 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
    
    
  3. 以 docker 容器的方式啟動 Milvus。

    $ 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.
    
    

    您可以使用下列指令來管理 Milvus 容器和儲存的資料。

    # Stop Milvus
    $ bash standalone_embed.sh stop
    Stop successfully.
    
    # Delete Milvus data
    $ bash standalone_embed.sh stop
    Delete Milvus container successfully.
    Delete successfully.
    
    

使用 Docker Compose 執行 Milvus

在 Microsoft Windows 上安裝 Docker Desktop 之後,您就可以從 PowerShell 或 Windows Command Prompt 以管理員模式存取 Docker CLI。您可以在 PowerShell、Windows Command Prompt 或 WSL 2 中執行 Docker Compose 來啟動 Milvus。

從 PowerShell 或 Windows Command Prompt

  1. 在管理員模式中開啟 Docker Desktop,方法是按滑鼠右鍵並選擇以管理員身分執行

  2. 在 PowerShell 或 Windows Command Prompt 執行下列指令,為 Milvus Standalone 下載 Docker Compose 配置檔案,並啟動 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
    
    

    視您的網路連線而定,下載 Milvus 安裝的映像可能需要一段時間。命名為milvus- standalonemilvus-miniomilvus-etcd的容器啟動後,您可以看到

    • milvus-etcd容器不向主機暴露任何連接埠,並將其資料映射到目前資料夾中的volumes/etcd

    • milvus-minio容器使用預設的驗證憑證在本機服務連接埠90909091,並將其資料對應到目前資料夾中的volumes/minio

    • milvus-standalone容器使用預設設定在本機服務連接埠19530,並將其資料對應到目前資料夾中的volumes/milvus

如果您已安裝 WSL 2,也可以呼叫 Linux 版本的 Docker Compose 指令。

從 WSL 2

步驟與在 Linux 系統中使用 Docker Compose 安裝 Milvus 相似。

  1. 啟動 WSL 2。

    C:\>wsl --install
    Ubuntu already installed.
    Starting Ubuntu...
    
    
  2. 下載 Milvus 配置檔案。

    $ wget https://github.com/milvus-io/milvus/releases/download/v2.4.17/milvus-standalone-docker-compose.yml -O docker-compose.yml
    
    
  3. 啟動 Milvus。

    $ sudo docker compose up -d
    
    Creating milvus-etcd  ... done
    Creating milvus-minio ... done
    Creating milvus-standalone ... done
    
    

常見問題

我該如何處理Docker Engine stopped 錯誤?

當您在 Windows 安裝 Docker Desktop 後,如果您的電腦沒有正確設定,您可能會遇到Docker Engine stopped 錯誤。在這種情況下,您可能需要進行以下檢查。

  1. 檢查是否已啟用虛擬化。

    您可以查看「任務管理員」中的「效能」索引標籤,以檢查虛擬化是否已啟用。

    Virtualization in Task Manager 工作管理器中的虛擬化

    如果虛擬化已停用,您可能需要檢查主機板韌體的 BIOS 設定。在 BIOS 設定中啟用虛擬化的方法因主機板廠商而異。以華碩主機板為例,您可以參考這篇文章來啟用虛擬化。

    然後,您需要重新啟動電腦並啟用 Hyper-V。詳情請參閱這篇微軟文章

  2. 檢查 Docker Desktop Service 是否已經啟動。

    您可以執行下列指令來啟動 Docker Desktop Service。

    C:\>net start com.docker.service
    The Docker for Windows Service service is starting.
    The Docker for Windows Service service was started successfully.
    
    
  3. 檢查是否已正確安裝 WSL。

    您可以執行下列指令來安裝或更新 WSL 2 指令。

    C:\>wsl --update
    Checking for updates.
    The most recent version of Windows Subsystem for Linux is already installed.
    
    
  4. 檢查 Docker Daemon 是否已啟動。

    您需要到 Docker Desktop 的安裝目錄,執行.\DockerCli.exe -SwitchDaemon 來啟動 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.
    
    
  5. 檢查是否已以管理員模式啟動 Docker Desktop。

    確保你已經以管理員模式啟動 Docker Desktop。要這樣做,在Docker Desktop上按一下滑鼠右鍵,然後選擇以管理員模式執行

    Start Docker Desktop as Administrator 以管理員模式啟動 Docker Desktop

如果您在從 WSL 2 執行 Milvus 時遇到 WSL 相關的問題,您可能需要檢查是否已將 Docker Desktop 設定為使用基於 WSL 2 的引擎,如下所示。

  1. 確保在設定>一般中勾選「使用 WSL 2-based engine」。

    Use the WSL 2 based engine in Docker Desktop Settings 在 Docker Desktop 設定中使用基於 WSL 2 的引擎

  2. 從已安裝的 WSL 2 發行版本中選擇要啟用 Docker 整合的版本,前往設定>資源>WSL 整合

    Select WSL 2 distributions in Docker Desktop Settings 在 Docker Desktop 設定中選擇 WSL 2 發行版本

Read config failed error prompt in Milvus startup 在 Milvus 啟動時出現讀取設定失敗的錯誤提示

要處理 Milvus 啟動時提示「讀取設定失敗」的錯誤,您需要檢查掛載到 Milvus 容器的磁碟區是否正確。如果磁碟區正確掛載到容器中,您可以使用docker exec 指令進入容器,並列出/milvus/configs資料夾,如下所示。

List Milvus config files 列出 Milvus 配置文件

下一步

在 Docker 中安裝 Milvus 後,您可以

免費嘗試托管的 Milvus

Zilliz Cloud 無縫接入,由 Milvus 提供動力,速度提升 10 倍。

開始使用
反饋

這個頁面有幫助嗎?