在 Mac 上使用 Docker 安装 Milvus 2.6.2

在 Mac 上使用 Docker 安装 Milvus 2.6.2

前提条件

  1. 已安装 Docker Desktop for Mac

  2. Docker 已启动,并分配足够资源(建议):

    1. CPU ≥ 4 核

    2. 内存 ≥ 8GB

第一步:创建 Milvus 目录

复制代码
mkdir milvus-2.6.2 && cd milvus-2.6.2

第二步:下载 Milvus 2.6.2 的 Docker Compose 文件

复制代码
wget https://github.com/milvus-io/milvus/releases/download/v2.6.2/milvus-standalone-docker-compose.yml -O docker-compose.yml

如果没有wget,先下载一下。

复制代码
brew upgrade
brew install wget

如果没有wget,也可以用 curl

复制代码
curl -L https://github.com/milvus-io/milvus/releases/download/v2.6.2/milvus-standalone-docker-compose.yml -o docker-compose.yml

第三步:启动 Milvus

复制代码
docker compose up -d

成功后会启动三个容器:

  • Milvus Standalone

  • MinIO(对象存储)

  • Etcd(元数据存储)

第四步:确认运行成功

复制代码
docker ps

第五步:连接测试

在 Spring Boot 中使用 Milvus 向量数据库,需要借助 Milvus 的 Java SDK 来实现集成。

1. 添加依赖

pom.xml 中添加 Milvus Java SDK 依赖:

复制代码
<dependency>
    <groupId>io.milvus</groupId>
    <artifactId>milvus-sdk-java</artifactId>
    <version>2.6.2</version> <!-- 请使用最新版本 -->
</dependency>
<dependency>
    <groupId>org.apache.commons</groupId>
    <artifactId>commons-pool2</artifactId>
    <version>2.12.0</version>
</dependency>
2. 配置 Milvus 连接
复制代码
milvus:
  host: localhost
  port: 19530   # Docker 默认端口
3.配置类
java 复制代码
import io.milvus.client.MilvusServiceClient;
import io.milvus.param.ConnectParam;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

@Configuration
public class MilvusConfig {

    @Value("${milvus.host}")
    private String host;

    @Value("${milvus.port}")
    private Integer port;

    @Bean
    public MilvusServiceClient milvusClient() {
        ConnectParam connectParam = ConnectParam.newBuilder()
                .withHost(host)
                .withPort(port)
                .build();
        return new MilvusServiceClient(connectParam);
    }
}
4.Milvus 测试接口
java 复制代码
@Tag( name = "Milvus Test", description = "Milvus 测试接口")
@RestController
public class MilvusTestController {

    @Resource
    private MilvusServiceClient milvusClient;

    @Operation(summary = "测试 Milvus 连接")
    @GetMapping("/test/milvus")
    public String testMilvus() {
        try {
            // 测试是否能连接到 Milvus
            boolean connected = milvusClient != null;
            // 检查一个不存在的 Collection
            boolean has = milvusClient.hasCollection(
                    HasCollectionParam.newBuilder()
                            .withCollectionName("test_collection")
                            .build()
            ).getData();

            return "Milvus 连接成功!客户端可用: " + connected + ", Collection存在: " + has;
        } catch (Exception e) {
            return "Milvus 连接失败: " + e.getMessage();
        }
    }
}
相关推荐
敲上瘾4 小时前
Docker镜像构建指南:Dockerfile语法与docker build命令全解析
linux·服务器·docker·微服务·容器
YC运维8 小时前
Dockerfile实战案例详解
运维·docker·容器
小灰灰的可爱无人可替代11 小时前
记录一次使用docker和docker-compose更新vue前端项目问题
nginx·docker·vue
荣光波比17 小时前
K8S(一)—— 云原生与Kubernetes(K8S)从入门到实践:基础概念与操作全解析
云原生·容器·kubernetes
伞啊伞17 小时前
K8s概念基础(一)
云原生·容器·kubernetes
hello_25018 小时前
k8s基础监控promql
云原生·容器·kubernetes
小杨的全栈之路20 小时前
生产级实践:在 Docker 中安全导入自签名证书,保障 Spring Boot 应用通信安全
docker·https
静谧之心21 小时前
在 K8s 上可靠运行 PD 分离推理:RBG 的设计与实现
云原生·容器·golang·kubernetes·开源·pd分离
计算机小手1 天前
推荐一个 GitHub 开源项目信息卡片生成工具,支持Docker快速部署和API调用
经验分享·docker·github·开源软件