Skip to main content

Docker中间件部署

作者:程序员马丁

在线博客:https://nageoffer.com

note

Ragent AI —— 从 0 到 1 纯手工打造企业级 Agentic RAG,拒绝 Demo 玩具!AI 时代,助你拿个offer。

在开始正式使用 Ragent AI 之前,我们需要先准备好相关的中间件环境。本章节将详细介绍 PostgreSQLRedisRustFS 的安装及配置流程,并附上客户端工具的使用指南,帮助大家快速搭建起完整的本地开发环境。

注意:本文件仅包含 2026-03-02 版本的中间件安装配置,旨在满足项目最小化启动需求。后续将持续集成 RocketMQ、Nacos、Prometheus 及 Grafana 等组件,具体更新以马哥移除本提示为准。

Ragent AI 项目使用 Docker 安装中间件,如果电脑尚未安装 Docker 相关软件,请先完成安装。

中间件安装

1. PostgreSQL

Ragent AI 使用 PostgreSQL 作为关系数据库,并集成 pgvector 扩展支持向量存储。通过以下 Docker 命令启动 PostgreSQL 实例:

docker run -d \
--name postgres \
-e POSTGRES_DB=ragent \
-e POSTGRES_USER=postgres \
-e POSTGRES_PASSWORD=postgres \
-p 5432:5432 \
-v pgdata:/var/lib/postgresql/data \
pgvector/pgvector:pg16

如果本地已安装 PostgreSQL 并可正常使用,跳过本小节即可。

Docker 启动配置参数说明:

  • -d:以后台的方式运行。
  • --name postgres:指定容器的名称为 postgres。
  • -e POSTGRES_DB=ragent:创建名为 ragent 的数据库。
  • -e POSTGRES_USER=postgres:设置数据库用户名为 postgres。
  • -e POSTGRES_PASSWORD=postgres:设置数据库密码为 postgres。
  • -p 5432:5432:将容器的 5432 端口挂载到宿主机的 5432 端口上。
  • -v pgdata:/var/lib/postgresql/data:持久化数据到 Docker 卷。

⚠️ 注意事项,创建好本地 PostgreSQL 后,记得查看修改对应项目 bootstrap 模块下的 application.yaml 数据库配置文件,重点是关注 url、username 以及 password 字段。

spring:
datasource:
driver-class-name: org.postgresql.Driver
type: com.zaxxer.hikari.HikariDataSource
username: postgres
password: postgres
url: jdbc:postgresql://127.0.0.1:5432/ragent?client_encoding=UTF8
hikari:
connection-timeout: 5000
idle-timeout: 600000
max-lifetime: 1800000
maximum-pool-size: 10
minimum-idle: 5
pool-name: RagentHikariPool

2. Redis

通过简易方式安装 Redis,主打的就是“有问题铲了重装”:

docker run  \
-p 6379:6379 \
--name redis \
-d redis \
redis-server \
--requirepass "123456"

创建命令里默认密码为 123456,可根据需要修改。如果此处修改,项目的配置文件中也需要检查下。

3. RustFS

在 Ragent AI 的整体架构设计中,引入了 RustFS 作为底层存储引擎。RustFS 具备高性能、低资源占用、强一致性以及良好的可扩展性等特点。

docker run -d \
--name rustfs \
-p 9000:9000 \
-p 9001:9001 \
-v rustfs-data:/data \
-e RUSTFS_ACCESS_KEY=rustfsadmin \
-e RUSTFS_SECRET_KEY=rustfsadmin \
-e RUSTFS_CONSOLE_ENABLE=true \
rustfs/rustfs:1.0.0-alpha.72 \
--address :9000 \
--console-enable \
--access-key rustfsadmin \
--secret-key rustfsadmin \
/data

继 MinIO 闭源后,RustFS 作为“接力棒”展现了活跃的社区和可持续版本迭代能力。

运行完成后,可通过以下命令查看正在运行的 Docker 容器:

docker ps

正常情况下,会看到包括但不限于以下容器实例正在运行:

  • rustfs
  • etcd
  • redis
  • postgres

如果上述容器均已启动,说明当前阶段部署成功。在接下来的章节中,我们将登录各中间件后台管理页面,对功能进行验证。

客户端工具

1. Redis Desktop

Redis 客户端连接工具使用 AnotherRedisDesktopManager,大家点击链接可跳转 GitHub 下载最新版本。

下载安装成功后,点击左上角新建连接即可。如果按照咱们上面 Redis 安装的教程,密码填入 123456,用户名默认可忽略。

2. RustFS

RustFS 提供了 Web 控制台,用于管理对象存储、创建存储桶(Bucket)、上传下载文件以及配置访问策略。登录控制台后,可在 Buckets 页面创建存储桶,设置访问权限和生命周期策略,并直接进行文件的上传、下载和管理操作。

登录信息

项目
控制台地址http://localhost:9001
API 地址(代码中使用)http://localhost:9000
账号rustfsadmin
密钥rustfsadmin

打开控制台地址后,输入账号和密钥,点击 登录 按钮即可登录。

登录成功后进入默认的 Dashboard 页面,可尝试创建 Bucket 并上传文件以验证服务是否正常运行。

文末小结

至此,本地中间件环境及客户端工具已完成安装与基本配置。

大家可以通过各自的 Web 控制台和客户端工具验证服务是否正常运行,并进行初步操作。后续章节将带你启动 Ragent 项目,并深入了解 Ragent AI 的核心功能、向量检索策略以及项目实战演示。