附录C Docker、RabbitMQ、MinIO 命令速查
C.1 使用前准备进入项目根目录cd D:\rag\rag-platform复制环境变量模板Copy-Item.env.example.envLinuxcp.env.example .env检查 Dockerdocker--versiondockercompose version当前docker-compose.yml编排的基础设施mysql - rag-mysql postgres - rag-postgres redis - rag-redis rabbitmq - rag-rabbitmq minio - rag-minio nacos - rag-nacos说明当前 Compose 主要编排基础设施。Java 微服务和前端是否容器化取决于后续是否补 Dockerfile 和完整服务编排。跨平台提醒Docker Compose 的 YAML 文件和 shell 脚本如果在 Windows 上编辑换行符默认为 CRLF。上传到 Linux 虚拟机后可能因为 CRLF 导致 YAML 解析错误或者脚本执行时报$\r: command not found建议在.gitattributes中配置*.sh text eollf *.yml text eollf如果已经出现 CRLF 问题可以在 Linux 上执行sed-is/\r$//*.sh *.yml也可以安装dos2unix工具批量处理。C.2 Docker Compose 常用命令启动全部依赖dockercompose --env-file .env up-d查看容器状态dockercomposeps查看全部日志dockercompose logs-f查看某个服务日志dockercompose logs-fmysqldockercompose logs-fpostgresdockercompose logs-fredisdockercompose logs-frabbitmqdockercompose logs-fminiodockercompose logs-fnacos停止全部容器dockercompose down重启某个服务dockercompose restart mysqldockercompose restart postgresdockercompose restart redisdockercompose restart rabbitmqdockercompose restart miniodockercompose restart nacos进入容器dockercomposeexecmysqlbashdockercomposeexecpostgresbashdockercomposeexecredisshdockercomposeexecrabbitmqbashdockercomposeexecminioshdockercomposeexecnacosbash查看数据卷dockervolumelsKnowHub 当前数据卷rag-mysql-data rag-postgres-data rag-redis-data rag-rabbitmq-data rag-minio-data rag-nacos-data rag-nacos-logs谨慎清理数据卷下面命令会删除容器和相关数据卷可能导致数据库、Redis、RabbitMQ、MinIO、Nacos 数据丢失。dockercompose down-v执行前必须确认已经备份数据。C.3 容器和端口速查组件容器名服务名默认端口MySQLrag-mysqlmysql3306PostgreSQL/pgvectorrag-postgrespostgres5432Redisrag-redisredis6379RabbitMQrag-rabbitmqrabbitmq5672RabbitMQ Managementrag-rabbitmqrabbitmq15672MinIO APIrag-miniominio9002MinIO Consolerag-miniominio9001Nacosrag-nacosnacos8848Nacos gRPCrag-nacosnacos9848Nacos Raftrag-nacosnacos9849Windows 端口检查Test-NetConnection127.0.0.1-Port 3306Test-NetConnection127.0.0.1-Port 5432Test-NetConnection127.0.0.1-Port 6379Test-NetConnection127.0.0.1-Port 5672Test-NetConnection127.0.0.1-Port 15672Test-NetConnection127.0.0.1-Port 9001Test-NetConnection127.0.0.1-Port 9002Test-NetConnection127.0.0.1-Port 8848Linux 端口检查ss-lntp|grep-E3306|5432|6379|5672|15672|9001|9002|8848一键全部端口检查docker compose up -d启动后等待约 30 秒让各容器完成初始化再执行下面的命令一次性确认全部端口已监听。Windows PowerShell$ports 3306,5432,6379,5672,15672,9001,9002,8848foreach($pin$ports){$resultTest-NetConnection127.0.0.1-Port$p-WarningAction SilentlyContinueWrite-Host端口$p:$($result.TcpTestSucceeded)}Linuxforportin330654326379567215672900190028848;doss-lntp|grep-q:$portecho端口$port: 监听中||echo端口$port: 未监听done如果有端口未监听单独查看该服务日志dockercompose logs-f服务名C.4 RabbitMQ 命令速查当前 Docker Compose 使用镜像rabbitmq:3.13-management默认端口5672 - 业务连接端口 15672 - 管理控制台默认环境变量RABBITMQ_DEFAULT_USER RABBITMQ_DEFAULT_PASS管理控制台地址http://localhost:15672如果部署在虚拟机地址改成http://虚拟机IP:15672查看 RabbitMQ 状态dockercomposeexecrabbitmq rabbitmqctl status查看用户dockercomposeexecrabbitmq rabbitmqctl list_users查看 vhostdockercomposeexecrabbitmq rabbitmqctl list_vhosts查看交换机dockercomposeexecrabbitmq rabbitmqctl list_exchanges查看队列dockercomposeexecrabbitmq rabbitmqctl list_queues带消息数量dockercomposeexecrabbitmq rabbitmqctl list_queues name messages_ready messages_unacknowledged consumers查看绑定关系dockercomposeexecrabbitmq rabbitmqctl list_bindings查看连接dockercomposeexecrabbitmq rabbitmqctl list_connections查看消费者dockercomposeexecrabbitmq rabbitmqctl list_consumers创建 vhost 示例dockercomposeexecrabbitmq rabbitmqctl add_vhost rag创建用户示例不要把真实密码写进教材或提交记录。下面只使用占位符。dockercomposeexecrabbitmq rabbitmqctl add_user rag_user replace-with-strong-password授权示例dockercomposeexecrabbitmq rabbitmqctl set_permissions-prag rag_user.*.*.*设置管理员标签dockercomposeexecrabbitmq rabbitmqctl set_user_tags rag_user administratorRabbitMQ 排查顺序1. docker compose ps 看 RabbitMQ 是否运行。 2. docker compose logs -f rabbitmq 看启动日志。 3. 访问 15672 管理台。 4. rabbitmqctl list_queues 看队列是否存在。 5. rabbitmqctl list_consumers 看消费者是否在线。 6. messages_ready 一直增长通常说明消费者没消费或消费失败。 7. messages_unacknowledged 一直增长通常说明消费者拿到消息但没有确认。说明RabbitMQ 的完整配置和代码实现参见第 9 章RabbitMQ 消息队列与索引任务和第 22 章全链路代码清单。学习阶段可以先在管理控制台确认 exchange、queue 和 binding 是否自动创建生产阶段需要补死信队列、消费幂等和告警。C.5 MinIO 命令速查当前 Docker Compose 使用镜像minio/minio:RELEASE.2024-07-16T23-46-41Z默认端口9002 - MinIO API 9001 - MinIO Console默认环境变量MINIO_ROOT_USER MINIO_ROOT_PASSWORDMinIO Console 地址http://localhost:9001MinIO API 地址http://localhost:9002如果部署在虚拟机http://虚拟机IP:9001 http://虚拟机IP:9002查看 MinIO 日志dockercompose logs-fminio使用 mc 客户端mcMinIO Client是 MinIO 官方命令行工具。如果本机尚未安装可以按系统选择一种方式。Windows 用户从 MinIO 官网下载mc.exe并放入PATH目录。macOSbrewinstallminio/stable/mcLinuxwgethttps://dl.min.io/client/mc/release/linux-amd64/mcchmodxmcsudomvmc/usr/local/bin/安装完成后执行mc--version确认mc可用后再配置 MinIO 别名。MinIO 常用命令行工具是mc。配置别名示例mcaliassetknowhub http://localhost:9002 ragminio replace-with-strong-password如果使用虚拟机mcaliassetknowhub http://虚拟机IP:9002 ragminio replace-with-strong-password查看 bucketmclsknowhub创建 bucketmcmb knowhub/rag-documents上传文件mccp./demo.md knowhub/rag-documents/demo.md下载文件mccpknowhub/rag-documents/demo.md ./demo-downloaded.md查看对象mclsknowhub/rag-documents递归查看mcls--recursiveknowhub/rag-documents删除对象mcrmknowhub/rag-documents/demo.md删除 bucket 前要确认里面没有重要文件。mcrb knowhub/rag-documentsMinIO 排查顺序1. docker compose ps 看 MinIO 是否运行。 2. docker compose logs -f minio 看启动日志。 3. 浏览器访问 9001 Console。 4. 确认 API 端口是 9002不是容器内部的 9000。 5. 确认 bucket 是否存在。 6. 确认账号密码是否和 .env 一致。 7. Java 服务如果运行在 WindowsMinIO 地址不要写容器内地址要写可访问的宿主机或虚拟机地址。说明MinIO 的完整配置和代码实现参见第 7 章文件服务、MinIO 与对象存储和第 22 章全链路代码清单。学习阶段可以先通过 Console 页面9001 端口手动查看上传的文件对象本地存储版本和 MinIO 版本的区别参见第 7 章 7.2 节。C.6 MySQL、PostgreSQL、Redis 快速命令虽然本附录标题重点是 Docker、RabbitMQ、MinIO但部署排查时经常也要快速进入数据库和 Redis。MySQL进入容器dockercomposeexecmysql mysql-uroot-p查看数据库SHOWDATABASES;USErag_demo;SHOWTABLES;PostgreSQL进入 psqldockercomposeexecpostgres psql-Upostgres-drag_vector检查 pgvectorSELECTextnameFROMpg_extensionWHEREextnamevector;查看向量表\d document_chunk_vectorRedis进入 redis-clidockercomposeexecredis redis-cli检查连接PINGPING是检查 Redis 连接是否正常的最快方法。返回PONG表示连接正常。如果连接失败优先检查 Redis 容器是否运行、端口是否正确、密码是否设置。dockercomposepsredis查看知识库 owner 缓存GET rag:kb:owner:{kbId}查看 keyKEYS rag:kb:owner:* KEYS rag:document:index-task:*说明生产环境不要频繁使用KEYS扫描大库学习和本地排查可以临时使用。NacosNacos 是服务注册中心和配置中心。检查 Nacos 运行状态最简单的方式是通过浏览器访问控制台。http://localhost:8848/nacos默认用户名和密码均为nacos登录后进入“服务管理 → 服务列表”预期看到四个服务rag-auth-service rag-gateway-service rag-knowledge-service rag-task-service并且健康实例数均为1。也可以使用 API 查询服务列表curl-XGEThttp://localhost:8848/nacos/v1/ns/service/list?pageNo1pageSize10-unacos:nacos如果服务列表为空说明微服务没有成功注册到 Nacos。优先检查各微服务的spring.cloud.nacos.discovery.server-addr同时确认 Nacos8848端口是否可达。C.7 高风险命令提醒以下命令可能删除数据或影响运行环境。删除容器和数据卷dockercompose down-v风险删除 MySQL、PostgreSQL、Redis、RabbitMQ、MinIO、Nacos 数据卷。删除单个 Docker volumedockervolumermrag-platform_rag-mysql-data风险删除对应组件数据。删除所有未使用资源dockersystem prune-a风险删除未使用镜像、容器、网络可能导致下次启动需要重新下载镜像。执行这些命令前先确认是否有数据备份 是否真的要重新初始化 是否会影响其他项目 是否是在正确项目目录中附录 C 的目标是让读者快速查命令。真正部署和交付流程仍以第 19 章为准。

相关新闻

近地面无人机植被定量遥感与生理参数反演技术应用

近地面无人机植被定量遥感与生理参数反演技术应用

专题一、近十年近地面无人机植被遥感文献分析、传感器选择、观测方式及质量控制要点1.1. 近十余年无人机植被遥感文献分析文献分析软件VOSviewer的使用(实践)无人机植被遥感的重点研究方向、研究机构、科学家1.2. 无人机遥感的特点及与卫星遥感的差异核心…

2026/9/23 6:42:40 阅读更多 →
抖音批量下载神器:5分钟快速上手,一键保存创作者全作品

抖音批量下载神器:5分钟快速上手,一键保存创作者全作品

抖音批量下载神器:5分钟快速上手,一键保存创作者全作品 【免费下载链接】douyin-downloader A practical Douyin downloader for both single-item and profile batch downloads, with progress display, retries, SQLite deduplication, and browser fa…

2026/9/28 15:47:35 阅读更多 →
从源码到部署:Cosmos3-Super-Text2Image-4Step开发者完全手册

从源码到部署:Cosmos3-Super-Text2Image-4Step开发者完全手册

从源码到部署:Cosmos3-Super-Text2Image-4Step开发者完全手册 【免费下载链接】Cosmos3-Super-Text2Image-4Step 项目地址: https://ai.gitcode.com/hf_mirrors/nvidia/Cosmos3-Super-Text2Image-4Step Cosmos3-Super-Text2Image-4Step是一款由NVIDIA开发的…

2026/10/11 0:15:00 阅读更多 →

最新新闻

Qt6计算器开发全解析:信号槽、表达式解析与工程实战

Qt6计算器开发全解析:信号槽、表达式解析与工程实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/15 2:26:21 阅读更多 →
Java 17内存安全:java.lang.foreign权限机制解析

Java 17内存安全:java.lang.foreign权限机制解析

1. 权限检查机制的设计背景在Java 17中引入的java.lang.foreign模块,作为Project Panama的重要组成部分,旨在提供更高效、更安全的内存访问能力。这个模块的核心挑战在于:如何在提供底层内存操作能力的同时,确保JVM的安全性不被破…

2026/10/15 2:26:21 阅读更多 →
SpringBoot+Vue田园管理系统开发实践

SpringBoot+Vue田园管理系统开发实践

1. 项目概述:田园管理系统的技术选型与定位这个基于SpringBootVue的乐享田园管理系统,本质上是一个面向现代农业场景的轻量级数字化解决方案。我在实际开发中发现,这类系统特别适合作为学生项目或中小型农场的入门级管理工具,因为…

2026/10/15 2:26:21 阅读更多 →
QT网络聊天室实战:基于TCP的聊天与文件传输实现

QT网络聊天室实战:基于TCP的聊天与文件传输实现

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/15 2:26:21 阅读更多 →
Qt新手必做:计算器项目实战,搞懂信号槽与布局管理

Qt新手必做:计算器项目实战,搞懂信号槽与布局管理

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/15 2:26:21 阅读更多 →
Firebase JS SDK RecaptchaVerifier 类完全指南:基于 reCAPTCHA 的应用验证器实战与源码解析

Firebase JS SDK RecaptchaVerifier 类完全指南:基于 reCAPTCHA 的应用验证器实战与源码解析

开发工具后端 【免费下载链接】firebase-js-sdk Firebase Javascript SDK 项目地址: https://gitcode.com/gh_mirrors/fi/firebase-js-sdk 点击查看 免费下载 RecaptchaVerifier 是 Firebase JS SDK(firebase-js-sdk)中基于 Google reCAPTCH…

2026/10/15 2:25:21 阅读更多 →

日新闻

Docker Compose 容器化部署 ChirpStack LoRaWAN 网络服务器实战

Docker Compose 容器化部署 ChirpStack LoRaWAN 网络服务器实战

1. 为什么选择容器化方式部署 LoRa 网络服务LoRa 物联网项目落地时,网络服务器是整个链路的核心枢纽。它负责接收网关上报的数据包、完成去重与解密、再把有效载荷分发给上层应用。早期大家习惯把网络服务器直接装在物理机上,依赖一堆系统库和特定版本的…

2026/10/15 0:00:46 阅读更多 →
共享LLM服务下的跨模型自动扩缩容:Kubernetes实战与避坑指南

共享LLM服务下的跨模型自动扩缩容:Kubernetes实战与避坑指南

1. 共享推理服务里,扩缩容到底难在哪做过大模型推理服务部署的人,大概都经历过这样的场景:一个团队共用一套推理集群,A 业务跑的是 7B 的小模型,B 业务跑的是 72B 的大模型,C 业务白天流量高、晚上几乎归零…

2026/10/15 0:00:46 阅读更多 →
Systemd 启动阶段根文件系统只读之谜:fstab 与 remount-fs 服务深度解析

Systemd 启动阶段根文件系统只读之谜:fstab 与 remount-fs 服务深度解析

1. 引子:一次内核恐慌引发的追查先从一个真实场景说起。某次我给一台老旧的嵌入式设备折腾系统裁减,为了把启动时间压进两秒以内,我手贱地把一串自认为“没用”的 systemd 服务给 disable 了,其中就包括systemd-remount-fs.servic…

2026/10/15 0:00:46 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/14 3:30:28 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/14 16:30:29 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/14 3:29:58 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/15 0:14:36 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/14 22:45:47 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/14 7:53:34 阅读更多 →