在 Docker 中运行 Milvus(Windows)
本页面演示了如何使用 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 并选择 “以管理员身份运行”,以管理员模式打开 Docker Desktop。
-
下载安装脚本,并将其保存为
standalone.bat。C:\>Invoke-WebRequest https://raw.githubusercontent.com/milvus-io/milvus/refs/heads/master/scripts/standalone_embed.bat -OutFile standalone.bat -
运行下载的脚本,以 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 的详细信息,请参阅这篇 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 start -
以 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 命令提示符访问 Docker CLI。您可以在 PowerShell、Windows 命令提示符或 WSL 2 中运行 Docker Compose 来启动 Milvus。
通过 PowerShell 或 Windows 命令提示符
-
右键单击 Docker Desktop,选择 以管理员身份运行,以管理员模式打开 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/v2.6.22/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 容器使用默认身份验证凭据在本地提供 9090 和 9091 端口服务,并将其数据映射到当前文件夹中的 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/v2.6.22/milvus-standalone-docker-compose.yml -O docker-compose.yml -
启动 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 ”错误。此时,您可能需要进行以下检查:
- 检查虚拟化功能是否已启用。
您可以通过查看 “任务管理器”中的 “性能”选项卡来检查虚拟化功能是否已启用。

如果虚拟化功能处于禁用状态,您可能需要检查主板固件的 BIOS 设置。在 BIOS 设置中启用虚拟化的方法因主板厂商而异。以华硕(ASUS)主板 为例,您可以参考这篇 关于启用虚拟化的 文章。
随后,您需要重启计算机并启用 Hyper-V。详情请参阅 这篇微软文章。
- 检查 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,然后选择 “以管理员身份运行”。

在部署 Milvus 时如何处理与 WSL 相关的问题?
如果您在 WSL 2 中运行 Milvus 时遇到与 WSL 相关的问题,可能需要按照以下步骤检查是否已将 Docker Desktop 配置为使用基于 WSL 2 的引擎:
- 请确保在 设置 → 常规 中勾选了“使用基于 WSL 2 的引擎”。

- 前往 设置 → 资源 → WSL 集成,从已安装的 WSL 2 发行版中选择您希望启用 Docker 集成的发行版。

如何处理 Milvus 启动时出现的与卷相关的错误提示“Read config failed ”?

要解决 Milvus 启动时出现的“读取配置失败”错误,您需要检查挂载到 Milvus 容器中的卷是否正确。如果卷已正确挂载到容器中,您可以使用 docker exec 命令进入容器,并按以下方式列出 /milvus/configs 文件夹:

下一步
在 Docker 中安装 Milvus 后,您可以:
-
查看 《快速入门》 了解 Milvus 的功能。
-
学习 Milvus 的基本操作:
-
在云端部署您的 Milvus 集群:
-
探索 Milvus WebUI——一个用于 Milvus 可观测性和管理的直观 Web 界面。
-
探索 Milvus Backup——一款用于 Milvus 数据备份的开源工具。
-
了解 Birdwatcher——一款用于调试 Milvus 并进行动态配置更新的开源工具。
-
探索 Attu——一款用于直观管理 Milvus 的开源图形用户界面工具。