Linux如何安装运行Qdrant?

Qdrant有多种安装方法,这里我们采用Docker Compose的方式安装,安装文档:Qdrant安装

安装操作步骤如下:

bash 复制代码
# 创建专属目录
sudo mkdir -p /opt/qdrant
# 进入目录
cd /opt/qdrant
# 在此目录编写 docker-compose.yml
vim docker-compose.yml
# 启动(必须在yml所在目录执行)
docker compose up -d

其中docker-compose.yml 文件的内容如下:

bash 复制代码
services:
  qdrant:
    image: qdrant/qdrant:latest
    restart: always
    container_name: qdrant
    ports:
      - 6333:6333
      - 6334:6334
    expose:
      - 6333
      - 6334
      - 6335
    configs:
      - source: qdrant_config
        target: /qdrant/config/production.yaml
    volumes:
      - ./qdrant_data:/qdrant/storage

configs:
  qdrant_config:
    content: |
      log_level: INFO

这份 docker-compose.yml 文件是用于配置和启动 Qdrant 向量数据库容器的,下面逐模块解析其中的配置项:

核心服务配置解析

services 下的 qdrant 节点定义了 Qdrant 容器的核心运行参数:

配置项 取值/示例 说明
image qdrant/qdrant:latest 指定容器使用的镜像:Qdrant 官方镜像,版本为 latest(最新版)。
restart always 容器重启策略:无论退出状态如何,容器总是自动重启(适合生产环境)。
container_name qdrant 自定义容器名称为 qdrant,便于识别和管理(默认会生成随机名称)。
ports - 6333:6333 - 6334:6334 端口映射:将宿主机端口映射到容器内部端口 - 6333:Qdrant HTTP 接口 - 6334:Qdrant gRPC 接口 格式:宿主机端口:容器端口
expose - 6333 - 6334 - 6335 暴露容器端口(仅对内网/其他容器可见,不映射到宿主机) 6335 为 Qdrant 集群通信端口(示例中未映射宿主机)。
configs source: qdrant_config target: /qdrant/config/production.yaml 配置文件挂载:将 configs 中定义的 qdrant_config 内容,挂载到容器内 /qdrant/config/production.yaml 路径(Qdrant 生产环境配置文件路径)。
volumes - ./qdrant_data:/qdrant/storage 数据卷挂载:将宿主机当前目录下的 qdrant_data 目录,映射到容器内 /qdrant/storage(Qdrant 数据存储目录),实现数据持久化(容器删除后数据不丢失)。

configs 模块(配置文件定义)

configs 下的 qdrant_config 用于定义注入容器的配置内容:

配置项 取值/示例 说明
content log_level: INFO 配置文件的具体内容:设置 Qdrant 的日志级别为 INFO(可选值:DEBUG/INFO/WARN/ERROR 等),该内容会被写入容器内的 production.yaml 文件。

关键补充说明

  1. 端口用途
    • 6333:HTTP 接口(常用,用于 REST API 调用);
    • 6334:gRPC 接口(高性能,适合批量操作);
    • 6335:集群节点间通信(示例中仅暴露未映射宿主机,单机部署无需关注)。
  2. 数据持久化volumes 映射是核心,确保 Qdrant 的向量数据、索引等存储在宿主机,避免容器销毁导致数据丢失。
  3. 配置优先级 :通过 configs 挂载的 production.yaml 会覆盖 Qdrant 镜像默认的配置,仅设置了 log_level 是极简配置,可扩展更多参数(如存储模式、集群配置等)。

运行 docker compose up -d

最终目录结构如下:

在浏览器中输入IP:6333/dashboard,看到可视化面板,则表示Qdrant运行成功: