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

最终目录结构如下:

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