当前位置: 首页 > news >正文

mac 安装 Milvus 向量数据库


一、环境准备

1.1 前置条件

  • Docker Desktop(已安装并运行)
  • Python 3.x(用于 pymilvus 客户端)

验证 Docker 正在运行:

dockerinfo

二、安装 Milvus Standalone

2.1 创建工作目录并下载官方 docker-compose 配置

mkdir-p~/milvus-standalonecd~/milvus-standalonecurl-Lhttps://github.com/milvus-io/milvus/releases/download/v2.5.4/milvus-standalone-docker-compose.yml\-odocker-compose.yml

下载完成后,docker-compose.yml内容包含三个服务:

容器名用途端口
milvus-etcd元数据存储(Raft 协调)2379-2380(内部)
milvus-minio对象存储(持久化向量数据)9000(API)、9001(Web UI)
milvus-standaloneMilvus 主进程19530(gRPC/SDK)、9091(HTTP/健康检查)

2.2 启动所有服务

cd~/milvus-standalonedockercompose up-d

实际输出(精简):

Image quay.io/coreos/etcd:v3.5.16 Pulled Image minio/minio:RELEASE.2023-03-20T20-16-18Z Pulled Image milvusdb/milvus:v2.5.4 Pulled Container milvus-etcd Started Container milvus-minio Started Container milvus-standalone Started

首次执行会拉取三个镜像,总大小约 700MB,根据网速需等待数分钟。

2.3 等待服务健康

# 等待约 30 秒后检查容器状态sleep30dockerps--format"table { {.Names}}\t{ {.Status}}\t{ {.Ports}}"|grepmilvus

实际输出:

milvus-standalone Up 37 seconds (healthy) 0.0.0.0:9091->9091/tcp, 0.0.0.0:19530->19530/tcp milvus-minio Up 37 seconds (healthy) 0.0.0.0:9000-9001->9000-9001/tcp milvus-etcd Up 37 seconds (healthy) 2379-2380/tcp

三个容器都显示(healthy)即为成功。

2.4 验证健康状态

curlhttp://localhost:9091/healthz# 输出:OK

三、访问 Web UI 管理界面

在浏览器打开:

http://127.0.0.1:9091/webui/

可以可视化查看 Collections、查询数据、监控集群状态。

MinIO 控制台(查看存储文件):

http://127.0.0.1:9001 # 用户名/密码:minioadmin / minioadmin

四、安装 Python 客户端

pip3installpymilvus

实际安装版本:pymilvus 3.0.0


五、Python 使用示例

5.1 连接 Milvus

frompymilvusimportMilvusClient client=MilvusClient(uri="http://localhost:19530")print("连接成功!")

5.2 创建 Collection(向量表)

COLLECTION="demo_standalone"# 如果已存在则先删除ifclient.
http://www.gsyq.cn/news/1458556.html

相关文章:

  • SpringBoot+Vue大学生在线考试平台源码+论文
  • 【C++11新章】一篇文章搞懂 std::initializer_list 模板类
  • 别再傻傻分不清:图解SCCB与I2C在时序上的关键三处不同(附示波器实测波形)
  • 别再被TB6600吓到了!用拇指大的A4988驱动42步进电机,51单片机/STM32/FPGA三平台代码实测
  • 告别寄存器恐惧:用Arduino+PlatformIO一步步调通SX1262 LoRa模块(附完整代码)
  • 中国人民大学研究团队打造的“多模态深度研究助手“
  • 微信小程序智慧物业系统源码包:支持云开发与本地部署,含报修投票、装修申请等完整功能
  • 【ST+梯形图混用实战:什么时候用什么,一张表说清楚】
  • 告别密码地狱:用Keycloak 18分钟搞定企业级单点登录与权限管理(Spring Boot实战)
  • 光伏电池片裂纹检测MATLAB工程包:含SVM模型、40组标注.mat图像与完整处理流程
  • 如何用PDFMathTranslate在30分钟内完成学术论文的精准翻译
  • 如何做微信投票链接,云帆投票小程序快速搭建教程 - 投票小程序
  • 别再死磕OLED了!用STM32F103驱动HMI串口屏,5分钟搞定交互界面(附完整代码)
  • M2.7工程化落地:面向研发工程师的AI工作流闭环模型
  • 手把手教你用Arduino UNO给ATmega168P烧录Bootloader(附USBasp备用方案)
  • 告别串口打印:用STM32 HAL库+DS18B20做个OLED屏显温度计(Keil工程开源)
  • CVE-2026-42945漏洞分析及复现
  • 实战演练:基于快马AI构建高可靠kafka订单事件驱动微服务系统
  • 彻底理清 B+ 树页分裂与页合并对大批量写入 MySQL分库分表与分区表的设计抉择 数据时吞吐量的影响路径
  • AD软件大电流布线必备:一招把Top层铺铜“变成”阻焊开窗,告别焊盘锡量不足的烦恼
  • 深入GL3224固件升级工具:如何手动添加Flash芯片支持(以Winbond W25Q16为例)
  • NarratoAI完整教程:三步掌握AI视频解说制作神器
  • AUTOSAR SPI实战避坑:同步调用Spi_SyncTransmit阻塞了CPU?试试异步Spi_AsyncTransmit提升效率
  • 用MATLAB批量生成卫星TLE文件:STK11自动化脚本实战(附完整代码)
  • 别再用BertModel直接喂给Chroma了!手写一个EmbeddingFunction解决HuggingFaceEmbeddings离线调用难题
  • Python 爬虫进阶技巧:批量解析 html 实体转义字符还原原始文本
  • 2026深度测评10款降AI率软件红黑榜!优缺点全曝光,达标率直接对标行业天花板
  • 用FPGA控制步进电机是种什么体验?从状态机到分频器,详解Verilog驱动A4988全流程
  • Apex Legends智能压枪助手终极指南:10分钟掌握精准射击
  • Spring AI Alibaba-ChatClient