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

相关推荐
wxmtwfx2 小时前
Linux内核GPIO工具概述
linux·驱动开发·gpio
松涛和鸣2 小时前
DAY69 Practical Guide to Linux Character Device Drivers
linux·服务器·arm开发·数据库·单片机·嵌入式硬件
2501_941148152 小时前
C++ map / multimap 保姆级教程
java·开发语言·c++
Yield & Allure2 小时前
EasyExcel使用
java
程序猿编码2 小时前
实战Linux内核模块:终止ptrace跟踪程序与被跟踪进程
linux·网络·内核·内核模块·ptrace
咩咩不吃草2 小时前
Linux环境下MySQL的安装与使用与Navicat
linux·运维·数据库·mysql·navicat
符哥20082 小时前
Fastjson2.X 使用详解
android·java
好好学习天天向上~~2 小时前
3_Linux学习总结_基础指令
linux·服务器·学习
郝学胜-神的一滴2 小时前
Linux网络编程之Socket函数:构建通信的桥梁
linux·服务器·网络·c++·程序人生