RuoYi-Cloud-Plus 教程
RuoYi-Cloud-Plus 开源项目快速上手教程:
1. 🚀 快速体验与项目获取
如果你只是想先了解功能,可以直接访问官方演示环境;若需二次开发,请从官方仓库拉取代码。
- 官方演示地址:http://cloud.ruoyi.vip
- 官方文档:https://plus-doc.dromara.org
- Gitee 仓库:https://gitee.com/dromara/RuoYi-Cloud-Plus
默认登录凭证
| 账号类型 | 用户名 | 密码 |
| 超级管理员 | admin | admin123 |
2. 📦 本地部署教程(Docker Compose 方式)
RuoYi-Cloud-Plus 采用微服务架构,包含网关、认证、系统等多个服务模块。推荐使用 Docker Compose 一键拉起所有基础依赖(MySQL, Redis, Nacos, MinIO 等),大幅降低环境配置难度。
第一步:环境准备
确保你的机器已安装以下基础环境:
- JDK:推荐使用 OpenJDK 17/21 或 GraalVM 17/21(禁止使用 OracleJDK,避免兼容性问题)
- Maven:≥ 3.8.X
- Docker & Docker Compose:最新版
- Node.js:18.18+(前端开发需要)
第二步:拉取代码与编译
1. git clone https://gitee.com/dromara/RuoYi-Cloud-Plus.git
2. cd RuoYi-Cloud-Plus
3. mvn clean install -DskipTests第三步:启动基础中间件
进入 Docker 配置目录,一键启动 MySQL、Redis、Nacos、MinIO 等基础服务:
1. cd script/docker
2. docker-compose up -d mysql redis nacos minio💡 提示:启动后请耐心等待 Nacos 初始化,可通过 docker logs -f ruoyi-nacos 查看启动日志。
第四步:初始化数据库
连接本地 MySQL,依次执行 sql 目录下的初始化脚本:
- 创建数据库并导入主业务数据:
ry-cloud.sql - 导入 Nacos 配置中心数据:
ry-config.sql - (可选)导入分布式事务数据:
ry-seata.sql
第五步:启动后端微服务
在 IDEA 中按顺序启动以下核心服务(或直接在命令行运行):
- ruoyi-gateway(网关服务,端口 8080)
- ruoyi-auth(认证服务,端口 9210)
- ruoyi-system(系统服务,端口 9201)
第六步:启动前端项目
1. cd plus-ui
2. npm install --registry=https://registry.npmmirror.com
3. npm run dev启动成功后,访问 http://localhost:80 即可进入系统。
3. 🏗️ 核心功能与架构解析
RuoYi-Cloud-Plus 的核心价值在于提供了一套完整的企业级基础设施,主要包含以下模块:
- 统一权限认证(Sa-Token):放弃了传统的 Spring Security,采用国产轻量级框架 Sa-Token。实现了用户认证、菜单权限、按钮权限及数据权限的四级控制体系,支持同端互斥登录、多账户并发等高级特性。
- 微服务治理(Spring Cloud Alibaba):使用 Nacos 作为注册中心与配置中心,Sentinel 实现熔断降级与流量控制,Gateway 作为统一入口处理路由转发与鉴权。
- 高性能通信(Dubbo 3.0):内部服务间采用 Dubbo 3.0 进行高性能 RPC 调用,替代传统的 HTTP Feign 调用,显著提升核心业务链路的响应速度。
- 分布式事务(Seata):内置 Seata 支持,解决微服务架构下跨库操作的数据一致性问题。
- 多租户与字典体系:原生支持 SaaS 多租户架构,提供完善的租户隔离机制;内置强大的字典管理功能,方便业务扩展。
- 代码生成器:支持一键生成前后端 CRUD 代码,涵盖 Controller、Service、Mapper 及 Vue 页面,极大缩短开发周期。
4. 🛠️ 技术栈全景
| 分类 | 技术选型 |
| 基础框架 | Spring Boot 3.x, Spring Cloud Alibaba |
| 权限认证 | Sa-Token |
| 持久层 | MyBatis-Plus, Dynamic-Datasource (多数据源) |
| 服务通信 | Dubbo 3.0, OpenFeign |
| 注册/配置 | Nacos |
| 流量防卫 | Sentinel |
| 分布式事务 | Seata |
| 任务调度 | SnailJob / Xxl-Job |
| 前端框架 | Vue3, Vite, Element Plus, Pinia |
5. ⚠️ 常见问题与避坑指南
- JDK 版本陷阱:务必使用 JDK 17 或 21,使用 JDK 8 会导致大量依赖冲突和启动失败。
- Nacos 配置:Nacos 必须连接
ry-config数据库,否则服务无法读取远程配置。 - 内存要求:由于微服务数量较多,本地开发建议机器内存 16GB+,否则容易出现 OOM(内存溢出)。
- 数据库字符集:创建数据库时请务必使用
utf8mb4字符集和utf8mb4_general_ci排序规则,避免中文乱码。 - IDEA 版本:推荐使用 IDEA 2024.2 及以上版本,旧版本在刷新 Maven 依赖时可能会遇到兼容性问题。