Docker で Milvus を実行する(Windows)
デフォルトでは、このデプロイメントではメッセージキューとしてWoodpecker(ローカルファイルシステム)が使用されるため、外部のメッセージキューサービスは不要です。Woodpecker を参照してください。
このページでは、Docker Desktop for Windows を使用して Windows 上で Milvus を実行する方法について説明します。
前提条件
Python 3.8 以降をインストールしてください。
Docker での Milvus の実行
Milvus には、Docker コンテナとしてインストールするためのインストールスクリプトが用意されています。Microsoft Windows に Docker Desktop をインストールしたら、管理者モードの PowerShell または Windows コマンドプロンプト、および WSL 2 から Docker CLI にアクセスできます。
PowerShell または Windows コマンドプロンプトから
PowerShell や Windows コマンドプロンプトに慣れている場合は、以下のコマンドを実行します。
Docker Desktopを右クリックし、「管理者として実行」を選択して、管理者モードで開きます。
インストールスクリプトをダウンロードし、
standalone.batという名前で保存します。C:\>Invoke-WebRequest https://raw.githubusercontent.com/milvus-io/milvus/refs/heads/master/scripts/standalone_embed.bat -OutFile standalone.batダウンロードしたスクリプトを実行して、MilvusをDockerコンテナとして起動します。
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 で起動しました。
Milvus とともに、埋め込み型の etcd が同じコンテナ内にインストールされ、ポート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コマンドやシェルスクリプトを使用してMilvusを起動する場合は、WSL 2がすでにインストールされていることを確認してください。WSL 2のインストール方法の詳細については、Microsoftのこの記事を参照してください。
WSL 2 を起動します。
C:\>wsl --install Ubuntu already installed. Starting Ubuntu...インストールスクリプトをダウンロードします
# 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 startMilvusを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.以下のコマンドを使用して、Milvus コンテナおよび保存されたデータを管理できます。
# Stop Milvus $ bash standalone_embed.sh stop Stop successfully. # Delete Milvus data $ bash standalone_embed.sh delete Delete Milvus container successfully. Delete successfully.
Docker Compose を使用して Milvus を実行する
Microsoft Windows に Docker Desktop をインストールすると、管理者モードのPowerShell または Windows コマンドプロンプトから Docker CLI にアクセスできます。PowerShell、Windows コマンドプロンプト、または WSL 2 のいずれかで Docker Compose を実行して、Milvus を起動できます。
PowerShell または Windows コマンドプロンプトから
Docker Desktopを右クリックし、「管理者として実行」を選択して、管理者モードで開きます。
PowerShell または Windows コマンドプロンプトで以下のコマンドを実行し、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/v3.0.1/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-standalone」、「milvus-minio」、「milvus-etcd」という名前のコンテナが起動すると、次のような状態になっていることが確認できます。
milvus-etcdコンテナはホストに対してポートを公開しておらず、そのデータを現在のフォルダ内のvolumes/etcdにマッピングしています。
milvus-minioコンテナは、デフォルトの認証情報を使用してローカルでポート9000および9001を提供し、そのデータを現在のフォルダ内のvolumes/minioにマッピングします。
milvus-standaloneコンテナは、デフォルト設定でローカルのポート19530を提供し、そのデータを現在のフォルダ内のvolumes/milvusにマッピングします。
WSL 2 がインストールされている場合は、Linux 版の Docker Compose コマンドを実行することもできます。
WSL 2 から
手順は、Linux システムで Docker Compose を使用して Milvus をインストールする場合と同様です。
WSL 2 を起動します。
C:\>wsl --install Ubuntu already installed. Starting Ubuntu...Milvusの設定ファイルをダウンロードします。
$ wget https://github.com/milvus-io/milvus/releases/download/v3.0.1/milvus-standalone-docker-compose.yml -O docker-compose.ymlMilvusを起動します。
$ 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 」というエラーが発生することがあります。その場合は、以下の点を確認してください:
仮想化機能が有効になっているか確認してください。
仮想化が有効になっているかどうかは、タスクマネージャーの[パフォーマンス] タブで確認できます。
タスクマネージャーでの仮想化設定
仮想化が無効になっている場合は、マザーボードのファームウェアのBIOS設定を確認する必要があるかもしれません。BIOS設定で仮想化を有効にする方法は、マザーボードのメーカーによって異なります。たとえば、ASUSのマザーボードの場合は、仮想化を有効にする方法について、こちらの記事を参照してください。
その後、コンピュータを再起動して Hyper-V を有効にする必要があります。詳細については、Microsoft のこの記事を参照してください。
Docker Desktop サービスが起動しているか確認してください。
次のコマンドを実行して、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.WSLが正しくインストールされているか確認してください。
以下のコマンドを実行して、WSL 2 をインストールまたは更新できます。
C:\>wsl --update Checking for updates. The most recent version of Windows Subsystem for Linux is already installed.Docker デーモンが起動しているか確認してください。
Docker Desktop のインストールディレクトリに移動し、
.\DockerCli.exe -SwitchDaemonを実行して Docker デーモンを起動する必要があります。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.Docker Desktopを管理者モードで起動しているか確認してください。
Docker Desktop が管理者モードで起動していることを確認してください。そのためには、Docker Desktopを右クリックし、「管理者として実行」を選択してください。
Docker Desktop を管理者として起動する
Milvusのデプロイ中にWSL関連の問題が発生した場合、どのように対処すればよいですか?
WSL 2 から Milvus を実行中に WSL 関連の問題が発生した場合は、Docker Desktop が WSL 2 ベースのエンジンを使用するように設定されているか、次のように確認する必要があります:
[設定]> [一般] で、「WSL 2 ベースのエンジンを使用する」にチェックが入っていることを確認してください。
Docker Desktopの設定でWSL 2ベースのエンジンを使用する
[設定]>[リソース]>[WSL 統合] に移動し、インストール済みの WSL 2 ディストリビューションの中から、Docker 統合を有効にしたいものを選択してください。
Docker Desktopの設定でWSL 2ディストリビューションを選択する
Milvusの起動時に「Read config failed 」というボリューム関連のエラーが表示された場合、どのように対処すればよいですか?
Milvusの起動時に表示される「Read config failed」エラー
Milvusの起動時に「Read config failed」というエラーが表示された場合は、Milvusコンテナにマウントされたボリュームが正しいかどうかを確認する必要があります。ボリュームがコンテナに正しくマウントされている場合は、docker exec コマンドを使用してコンテナ内に移動し、次のように/milvus/configsフォルダの一覧を表示できます:
Milvusの設定ファイルの一覧表示
Storage V3はデフォルトで無効になっています。Storage V3に依存する機能を使用する前に、有効にしてください。要件および互換性に関する注意事項については、「Storage V3」を参照してください。
次の手順
DockerにMilvusをインストールしたら、次のことができます:
「クイックスタート」を参照して、Milvusの機能を確認してください。
Milvusの基本的な操作方法を学びましょう:
クラウド上に Milvus クラスターをデプロイする:
Milvusの可観測性と管理のための直感的なWebインターフェース「Milvus WebUI」をご覧ください。
Milvus データのバックアップを行うオープンソースツール「Milvus Backup」をご覧ください。
Milvusのデバッグや動的な設定更新を行うためのオープンソースツール「Birdwatcher」をご覧ください。
Milvus を直感的に管理できるオープンソースの GUI ツール「Attu」をご覧ください。