Linux上使用Docker安装单机版Milvus向量数据库并配置访问控制和可视化面板Attu

本文介绍了如何使用Docker和docker-compose在Linux系统上搭建Milvus向量数据库,包括下载配置文件、设置环境、添加attu可视化面板以及进行必要的端口管理和权限设置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.  Milvus向量数据库简介
Milvus是一款开源的向量数据库,它专为AI应用设计,用于管理和检索海量的特征向量。Milvus的优势主要包括:

高效的向量检索性能:Milvus采用了多种先进的索引算法,如IVF, HNSW, ANNOY等,能够在大规模数据集上实现高效的近似最近邻搜索。

易于扩展和维护:Milvus支持水平和垂直扩展,能够适应不断增长的数据规模和查询需求。它的分布式架构使得数据存储和计算能力可以灵活扩展。

多种数据持久化选项:Milvus支持SSD, HDD等多种存储介质,并且可以与多种持久化存储解决方案集成,如MinIO, S3等。

丰富的数据接口:Milvus提供了Python, Java, RESTful等多种语言的SDK,方便开发者在不同的应用场景中使用。

强大的可扩展性和兼容性:支持各种大小和类型的向量数据,可以与现有的数据处理和机器学习工作流程无缝集成。

容器化和云原生支持:支持Docker和Kubernetes,方便在云环境中部署和管理。

开源社区支持:作为一个开源项目,Milvus拥有活跃的社区,不断有新的功能和改进被加入。

2. 前置设置: 确保已经安装了docker和docker-compose
要求系统至少有8G的内存(但我实际是4G内存也没有任何问题)
参考官方文档的信息:Environment Checklist for Milvus with Docker Compose Milvus documentation

docker 、docker compose以下版本及以上 (docker 19.0以上即可)

3. 创建milvus工作目录

在Linux系统上新建一个工作目录,以根目录为例:

# 新建一个名为milvus的目录用于存放数据 目录名称可以自定义
mkdir milvus

# 进入到新建的目录
cd milvus

下载并编辑docker-compose.yml

在下载最新的docker-compose.yml文件前,可以先进入到Github项目主页查看最新版本的milvus:
https://github.com/milvus-io/milvus/releases

下载安装文件,注意这里的路径版本是v2.3.5,根据自己实际情况选择CPU和GPU版本,不清楚的话就选CPU版本

# CPU单机版
wget https://github.com/milvus-io/milvus/releases/download/v2.3.5/milvus-standalone-docker-compose.yml -O docker-compose.yml
# GPU单机版
wget https://github.com/milvus-io/milvus/releases/download/v2.3.5/milvus-standalone-docker-compose-gpu.yml -O docker-compose.yml

下载完成后编辑docker-compose.yml文件,在其中添加attu可视化面板的容器
attu的最新版本参阅官方release页面:Releases · zilliztech/attu · GitHub

version: '3'

services:
  etcd:
	...(略)

  minio:
	...(略)

  standalone:
	...(略)

  # 在原docker-compose文件的这个位置添加下面这个attu容器,注意版本号和行前空格。
  attu:
    container_name: attu
    image: zilliz/attu:v2.3.6
    environment:
      MILVUS_URL: milvus-standalone:19530
    ports:
      - "8000:3000"  # 外部端口8000可以自定义
    depends_on:
      - "standalone"

# network这部分是原文件就有的,保持不动
networks:
  default:
    name: milvus

 下载milvus.yml文件

该文件是milvus的配置文件,容器中内置,但如果要修改配置,需要单独下载,这里为了做访问控制,就需要修改配置。

# 注意改成自己对应的milvus版本号
wget https://raw.githubusercontent.com/milvus-io/milvus/v2.3.5/configs/milvus.yaml

下载好后,确保该文件位于milvus工作目录下,然后编辑该文件,找到其中的common > security > authorizationEnabled并将其设置为true

下载后,修改docker-compose.yml做资源映射,在图中的位置:

...
  standalone:
    container_name: milvus-standalone
    image: milvusdb/milvus:v2.3.5
	...(略)
    volumes:
      - ${DOCKER_VOLUME_DIRECTORY:-.}/volumes/milvus:/var/lib/milvus
      # 新增下面这一行来实现配置文件的映射
      - ${DOCKER_VOLUME_DIRECTORY:-.}/milvus.yaml:/milvus/configs/milvus.yaml
	...(略)
...

 启动milvus

# 拉取镜像
docker-compose pull

# 启动容器
docker-compose up -d

# 查看启动状态(健康状态)
docker-compose ps -a

# 停止容器
docker-compose down

放开端口
连接数据库需要放开19530端口,这是milvus的默认端口,可在docker-compose.yml中修改。
访问可视化面板放开8000端口(刚才自己设置的)做反向代理的话可以不用放开此端口。

4. 访问可视化面板并修改代码

AttuAttu, best milvus management toolicon-default.png?t=N7T8http://219.159.22.22:9797/以上端口是自行设置的   初始用户名密码如下:

进入后修改账号和密码:

修改完退出并使用新密码登录即可看到修改成功了。

### 使用 Attu 创建配置 Milvus 向量数据库 #### 安装 Docker Docker Compose 为了使用 Attu 来管理 Milvus 数据库,首先需要确保已经安装Docker Docker Compose。这一步骤假设读者已经在本地环境中完成了这两个软件的安装。 #### 配置存储目录 在启动 Milvus 前,需为持久化数据准备相应的文件夹: ```bash mkdir -p /data/milvus/db mkdir -p /data/milvus/conf mkdir -p /data/milvus/etcd ``` 这些命令会创建三个必要的子目录用于保存数据库、配置以及分布式协调服务 Etcd 的相关资料[^3]。 #### 启动 Milvus 实例 利用 `docker-compose` 文件定义的服务来部署单节点版 Milvus: ```yaml version: '3' services: standalone: image: milvusdb/milvus:v2.0-cpu-d061721-5e559c container_name: milvus_standalone environment: - MILVUS_LOG_LEVEL=debug ports: - "19530:19530" - "8080:8080" volumes: - /data/milvus/db:/var/lib/milvus/db - /data/milvus/conf:/var/lib/milvus/conf - /data/milvus/etcd:/var/lib/milvus/etcd ``` 上述 YAML 片段展示了如何设置环境变量、端口映射及卷挂载以实现对 Milvus 的定制化配置。 #### 访问 Attu 可视化界面 一旦 Milvus 成功启动,在浏览器地址栏输入 http://localhost:8080 即可访问到 Attu 用户界面。首次登录时可能需要等待几秒钟让前端应用加载完毕[^1]。 #### 创建 Collection 上传向量数据 进入 Attu 主页后,点击左侧菜单中的 “Collections”,接着按提示新建一个 collection。此时可以选择指定该集合所使用的索引类型(例如 IVF 或 HNSW),这对于后续执行高效的相似度查询至关重要[^2]。 完成 collection 设置之后,可以通过 CSV 文件批量导入方式或是 API 接口逐条插入的方式往其中加入实际的向量实例。每一条记录都由若干个 field 组成,其中包括至少一个 vector 类型字段其他辅助信息字段。 #### 构建索引优化性能 当有足够的向量被录入 system 中以后,建议针对目标 collection 执行 build index 操作。这一过程能够显著提升日后检索效率,具体方法是在相应页面找到选项按照指引完成即可。 #### 测试搜索功能 最后,尝试发起一次简单的向量相似度查找请求验证整个流程是否正常工作。可以在界面上直接构建查询条件,设定返回结果数量上限等参数来进行测试。
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值