国内Ubuntu 22.04 LTS安装Milvus向量数据库

以下是基于 Ubuntu 22.04 的详细安装步骤:

🛠️ 第一步:环境准备

打开终端,依次执行以下命令,安装 Docker 和 Docker Compose。

复制代码
# 1. 更新软件包索引
sudo apt update

# 2. 安装必要的依赖
sudo apt install -y ca-certificates curl gnupg

# 3. 添加 Docker 的官方 GPG 密钥
sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg

# 4. 添加 Docker 仓库
echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
  $(. /etc/os-release && echo $VERSION_CODENAME) stable" | \
  sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

# 5. 安装 Docker 引擎
sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

# 6. 启动 Docker 并设置开机自启
sudo systemctl start docker
sudo systemctl enable docker

# 7. (可选) 将当前用户加入 docker 组,避免每次执行 docker 命令都要加 sudo
sudo usermod -aG docker $USER

注意 :执行完第 7 步后,需要重新登录终端(或重启终端窗口)才能生效,否则后续命令可能会报权限错误。


🐳 第二步:使用 Docker Compose 安装 Milvus

Milvus 官方提供了单机版的 docker-compose.yml 文件,包含了 Milvus 本身、元数据存储 (etcd) 和对象存储 (MinIO)。

  1. 创建工作目录

    复制代码
    mkdir ~/milvus && cd ~/milvus
  2. 下载配置文件

    我们使用 Milvus 2.4.3 版本的单机配置(这是一个稳定且资源占用相对较小的版本,适合你的配置)。

    复制代码
    wget https://github.com/milvus-io/milvus/releases/download/v2.4.3/milvus-standalone-docker-compose.yml -O docker-compose.yml
  3. 启动服务

    复制代码
    docker compose -f docker-compose.yml up -d

    第一次启动会自动下载镜像,根据网络情况可能需要几分钟,请耐心等待。


🔍 第三步:验证安装是否成功

  1. 查看容器状态

    执行以下命令,检查是否有三个容器在运行(milvus-standalone, milvus-minio, milvus-etcd),且状态为 healthy(健康)。

    复制代码
    docker compose -f docker-compose.yml ps
  2. 查看日志

    如果容器状态不是 healthy,可以查看日志排查问题:

    复制代码
    docker compose -f docker-compose.yml logs

🚀 第四步:连接 Milvus

安装成功后,你可以通过 Python SDK 或 Web UI 来连接和使用它。

方式 A:使用 Python SDK (推荐)

在你的 Python 环境中安装 pymilvus:

复制代码
pip install pymilvus

测试连接的 Python 代码:

复制代码
from pymilvus import connections

# 连接本地 Milvus
connections.connect("default", host="localhost", port="19530")

# 检查连接状态
print(connections.get_connection_addr())
方式 B:使用 Web UI (Attu)

Attu 是 Milvus 的可视化管理工具。

  1. 下载并运行 Attu Docker 镜像(将 latest 替换为你 Milvus 的版本号,如 v2.4.3):

    复制代码
    docker run -d --rm -p 3000:3000 -e MILVUS_URL=localhost:19530 zilliz/attu:v2.4.3
  2. 打开浏览器访问:http://localhost:3000

  3. 点击 "Connect" 即可进入管理界面。


⚠️ 针对你配置的特别提示

  • 内存占用:Milvus 启动后,Docker 容器(包括 MinIO 和 etcd)大约会占用 2-3GB 的内存。你的 16G 内存绰绰有余,但如果同时运行其他大型程序(如 IDE、浏览器开几百个标签页),请注意监控内存使用。
  • CPU 性能:i3-12100F 的性能足够处理中小规模的向量数据(例如百万级向量)。如果进行大规模建模(千万级以上),查询速度可能会变慢,但这不影响功能测试。
  • 数据持久化 :默认情况下,Docker Compose 会将数据保存在当前目录下的 volumes 文件夹中(在 docker-compose.yml 中有配置)。如果你删除了这个目录,数据将会丢失。

特别注意:国内镜像仓库都无法下载镜像,下面这个是正常

"registry-mirrors": [

"https://docker.m.daocloud.io",

"https://huecker.io",

"https://dockerhub.timeweb.cloud",

"https://noohub.ru"

]

sudo systemctl daemon-reload

sudo systemctl restart docker

相关推荐
用户2986985301423 分钟前
Java 实现 Word 文档加密与权限解除
java·后端
Yeats_Liao1 小时前
14:Servlet中的页面跳转-Java Web
java·后端·架构
未秃头的程序猿1 小时前
告别"if-else地狱"!Java 21模式匹配,代码优雅了10倍
java·后端·面试
鹤望兰6751 小时前
字节跳动国际支付-后端开发-三面面经
java
Flittly2 小时前
【AgentScope Java新手村系列】(14)人机交互
java·spring boot·spring
RainCity2 小时前
Java Swing 自定义组件库分享(十二)
java·笔记·后端
吃饱了得干活17 小时前
Spring Cloud Gateway 微服务网关:路由、断言、过滤器
java·spring cloud
lwx5728019 小时前
探秘InnoDB:搞懂它的内存、线程、磁盘与日志刷盘策略
java·后端
Flynt21 小时前
从Spring Boot 4.0升到4.1,我在Maven和gRPC上栽了跟头
java·spring boot·后端
plainGeekDev1 天前
Activity 间传值 → Navigation 参数
android·java·kotlin