国内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

相关推荐
秋天的怀念_David3 分钟前
第二十一夜 · 数字黑洞与西西弗斯的惩罚
java·程序人生·算法
外收内放11 分钟前
Python基础语法练习题(73)
java·前端·python
Wang's Blog15 分钟前
Java 项目实战: 交友项目 - 环信后台发送消息测试
java·交友
用户37215742613540 分钟前
Java 操作 Word 脚注和尾注:添加、读取与删除
java
丰锋ff1 小时前
压缩命令笔记
linux
小嘉丶学长1 小时前
Day14 · 字典与集合
java·开发语言·网络·python·学习·1024程序员节
字节探索1 小时前
Spring Boot 接口幂等性设计:从唯一索引到 Redis+Lua 的工程实践
java·spring boot
用户3721574261351 小时前
Java 实现 Excel 与 Markdown 相互转换:表格导出、格式设置与多表提取
java
SL_staff1 小时前
制造业订单交付总踩坑?用结构化节点协同模型重构计划系统
java·开源·全栈
永遠_2 小时前
YAML格式化工具
java