欢迎光临
我们一直在努力

快速部署Milvus 2.6.4单机版向量数据库(Docker Compose方式)

快速部署Milvus 2.6.4单机版向量数据库(Docker Compose方式)

Milvus是一款开源的云原生向量数据库,专为海量向量数据的高效存储、检索和分析设计。本文将基于提供的Docker Compose配置,手把手教你快速部署Milvus 2.6.4单机版,零门槛上手向量数据库。

一、部署前置条件

在开始部署前,请确保你的服务器满足以下条件:

  • 操作系统:Linux(本文以Ubuntu为例,CentOS/Deepin等发行版操作类似)
  • 已安装Docker和Docker Compose:
    • Docker版本 ≥ 20.10
    • Docker Compose版本 ≥ 1.29
  • 服务器资源:建议至少2核4G内存(单机测试可1核2G,生产环境需更高配置)
  • 端口占用检查:确保9000、9001、19530、9091端口未被占用
  • 二、部署步骤

    1. 环境准备(若未安装Docker)

    如果服务器尚未安装Docker,可执行提供的快速安装脚本(install_docker_fast.sh),或手动执行以下命令:

    # 卸载旧版本(可选)
    sudo apt-get remove docker docker-engine docker.io containerd runc

    # 设置仓库
    sudo apt-get update
    sudo apt-get install -y ca-certificates curl gnupg lsb-release

    # 添加Docker官方GPG密钥
    curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg –dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

    # 设置稳定版仓库
    echo "deb [arch=$(dpkg –print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

    # 安装Docker Engine
    sudo apt-get update
    sudo apt-get install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin

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

    # 验证安装
    docker –version
    docker compose version

    2. 目录与文件准备

    已存在~/milvus目录,且包含以下核心文件,无需额外创建:

    ~/milvus/
    ├── docker-compose.yml # Milvus核心部署配置
    ├── embedEtcd.yaml # Etcd嵌入式配置(备用)
    ├── install_docker_fast.sh # Docker快速安装脚本
    ├── standalone_embed.sh # 嵌入式启动脚本(备用)
    ├── user.yaml # 用户配置(备用)
    └── volumes/ # 数据持久化目录(自动挂载)

    3. 启动Milvus服务

    进入Milvus部署目录,执行启动命令:

    # 进入部署目录
    cd ~/milvus

    # 启动Milvus(后台运行)
    docker compose up -d

    # 查看容器启动状态
    docker compose ps

    预期输出

    启动成功后,docker compose ps会显示3个容器状态均为Up (healthy):

    NAME COMMAND SERVICE STATUS PORTS
    milvus-etcd "etcd -advertise-clie…" etcd Up (healthy) 2379/tcp, 2380/tcp
    milvus-minio "minio server /minio_…" minio Up (healthy) 0.0.0.0:9000->9000/tcp, 0.0.0.0:9001->9001/tcp
    milvus-standalone "/tini — milvus run …" standalone Up (healthy) 0.0.0.0:19530->19530/tcp, 0.0.0.0:9091->9091/tcp

    4. 验证Milvus服务可用性

    通过健康检查接口验证服务是否正常:

    # 检查Milvus健康状态
    curl http://localhost:9091/healthz

    # 检查MinIO健康状态
    curl http://localhost:9000/minio/health/live

    # 检查Etcd健康状态
    docker exec milvus-etcd etcdctl endpoint health

    成功标识
    • Milvus健康检查返回:OK
    • MinIO健康检查返回JSON格式的健康状态
    • Etcd健康检查返回:{"health":"true"}

    三、核心配置说明

    1. 端口说明

    端口用途访问方式
    9000 MinIO对象存储服务端口 数据存储访问
    9001 MinIO控制台端口 浏览器访问http://服务器IP:9001
    19530 Milvus核心服务端口 客户端连接向量数据库
    9091 Milvus健康检查端口 服务状态监控

    2. 数据持久化

    volumes目录挂载了3个核心组件的数据目录,确保容器重启后数据不丢失:

    • volumes/etcd:Etcd元数据存储
    • volumes/minio:MinIO向量数据存储
    • volumes/milvus:Milvus运行时数据

    3. 关键环境变量

    • ETCD_ENDPOINTS:Milvus连接Etcd的地址(内部网络)
    • MINIO_ADDRESS:Milvus连接MinIO的地址(内部网络)
    • MQ_TYPE: woodpecker:Milvus内置消息队列(单机版无需额外部署MQ)

    四、常用运维命令

    1. 停止Milvus服务

    cd ~/milvus
    docker compose down

    2. 查看Milvus日志

    # 查看所有组件日志
    docker compose logs -f

    # 仅查看Milvus核心日志
    docker compose logs -f standalone

    # 查看Etcd日志
    docker compose logs -f etcd

    3. 重启Milvus服务

    cd ~/milvus
    docker compose restart

    4. 清理Milvus数据(谨慎操作)

    # 停止服务
    docker compose down

    # 删除数据目录(会清空所有向量数据)
    rm -rf ~/milvus/volumes/*

    # 重新启动
    docker compose up -d

    五、常见问题排查

    1. 容器启动后状态为unhealthy

    • 原因:服务启动需要时间(Milvus首次启动约1-2分钟),或资源不足
    • 解决:等待90秒后重新检查,或升级服务器配置(至少2核4G)

    2. 端口被占用

    • 查看端口占用:netstat -tulpn | grep 端口号(如netstat -tulpn | grep 19530)
    • 解决:修改docker-compose.yml中的端口映射(如19531:19530)

    3. MinIO控制台登录失败

    • 默认账号密码:minioadmin/minioadmin
    • 若修改过密码,需同步修改docker-compose.yml中的MINIO_ACCESS_KEY和MINIO_SECRET_KEY

    六、下一步操作

  • 客户端连接:可使用Python/Java/Go SDK连接Milvus(地址:服务器IP:19530)
  • 数据操作:创建向量集合、插入向量数据、执行相似性检索
  • 生产环境优化:
    • 调整Etcd/MinIO/Milvus的资源限制(内存、CPU)
    • 配置持久化存储(如挂载云盘)
    • 开启监控(Prometheus + Grafana)
  • 总结

  • Milvus 2.6.4单机版可通过Docker Compose一键部署,核心依赖Etcd(元数据)、MinIO(数据存储)和Milvus核心服务;
  • 部署关键是确保Docker环境正常、端口未被占用,启动后通过健康检查接口验证服务可用性;
  • 数据持久化依赖volumes目录,运维时注意备份该目录以防止数据丢失。
  • 通过本文的步骤,你可以快速搭建一个可用的Milvus向量数据库环境,满足小规模向量检索场景的需求。

    赞(0)
    未经允许不得转载:171主机测评 » 快速部署Milvus 2.6.4单机版向量数据库(Docker Compose方式)
    分享到: 更多 (0)

    评论 抢沙发

    • 昵称 (必填)
    • 邮箱 (必填)
    • 网址