一,若依是什么

若依(RuoYi)是一套全部开源、以SpringBoot + MyBatis + Vue为核心、面向后台管理系统的快速开发平台,中文社区里也叫“若依权限管理系统”。把用户、角色、菜单、部门、字典、日志、监控、代码生成等通用后台功能做成脚手架,让开发者只写业务 SQL就能跑出完整前后端项目。

版本

后端架构

前端技术

内置功能亮点

适用场景

2025 状态

RuoYi(基础版)

SpringBoot 单体式 + JSP

Bootstrap 3

无分离、无代码生成

10 年前遗留项目

停止维护

RuoYi-Vue(分离版)

SpringBoot + MyBatis

Vue2 + Element-UI

代码生成、权限、定时任务、监控

常规后台、课程设计

社区最活跃、文档最多

RuoYi-Vue-Plus

SpringBoot + MyBatis-Plus + Redis + 多数据源

Vue2 + Element-UI

分布式事务、Flowable 工作流、大屏、Excel 导出、多租户

企业 ERP、OA、CRM

2025 主流 LTS

RuoYi-Vue3(Vue3 分离版)

SpringBoot + MyBatis-Plus

Vue3 + Element-Plus

同 Plus 功能,但前端升级为 Composition API

新项目、Vue3 技术栈

官方持续更新,2025 推荐

RuoYi-Cloud(微服务)

Spring Cloud Alibaba + Nacos + Gateway

Vue2 / Vue3 可选

注册中心、配置中心、链路追踪、Sentinel 限流

大型分布式、多团队

社区活跃,需要 k8s 经验

RuoYi-Cloud-Plus

在 Cloud 基础上集成 Seata、TX-LCN、RocketMQ、SkyWalking

Vue3 + Element-Plus

分布式事务、消息驱动、灰度发布、多租户

中台、平台级产品

2025 企业级首选

二,环境准备

IP

角色

部署组件清单

10.0.0.101

master

Nginx、MySQL、Redis、JDK、Maven(后端编译)

10.0.0.99

slave

JDK、jar 包( ruoyi-admin.jar)

三,master后端部署

1. 安装依赖

apt update && apt -y install wget curl vim git unzip build-essential

2. 安装 JDK17

apt -y install openjdk-17-jdk
java -version #验证

3.安装Maven

wget https://archive.apache.org/dist/maven/maven-3/3.9.6/binaries/apache-maven-3.9.6-bin.tar.gz
tar -xf apache-maven-3.9.6-bin.tar.gz -C /opt/
ln -s /opt/apache-maven-3.9.6/bin/mvn /usr/bin/mvn
mvn -v

4. 安装 MySQL 8.0

wget -c https://dev.mysql.com/get/mysql-apt-config_0.8.24-1_all.deb
dpkg -i mysql-apt-config_0.8.24-1_all.deb
apt update
apt -y install mysql-server

安全初始化(设 root 密码:RuoYi123@)

mysql_secure_installation

登录建库:

mysql -uroot -pRuoYi123@
CREATE DATABASE IF NOT EXISTS `ry-vue`
    ->   DEFAULT CHARACTER SET utf8mb4
    ->   COLLATE utf8mb4_general_ci;

5.安装 Redis 7

apt -y install redis
sed -i 's/^bind 127.0.0.1.*/bind 0.0.0.0/' /etc/redis/redis.conf
sed -i 's/^protected-mode yes/protected-mode no/' /etc/redis/redis.conf
systemctl enable --now redis-server
redis-cli ping   # 返回 PONG 即 OK

6. 拉取若依代码

cd /opt
git clone https://gitee.com/y_project/RuoYi-Vue.git

7. 导入 SQL

cd /opt/Ruoiyi-Vue/sql
ll ry*.sql
mysql -uroot -pRuoYi123@ ry-vue < ry_20231130.sql   # 共 2 个文件按顺序执行

8. 打包后端

cd /opt/RuoYi-Vue/ruoyi-admin
# 改配置文件,让数据库、redis 指向 10.0.0.101
vim src/main/resources/application-druid.yml
# url: jdbc:mysql://10.0.0.101:3306/ry-vue?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&serverTimezone=Asia/Shanghai
# username: root
# password: RuoYi123@
vim src/main/resources/application.yml
# 修改 redis host 为 10.0.0.101
mvn clean package -DskipTests

打好后 jar 路径:
/opt/RuoYi-Vue/ruoyi-admin/target/ruoyi-admin.jar

9.安装 Nginx

apt -y install nginx
curl -fsSL https://deb.nodesource.com/setup_18.x | bash -
apt-get install -y nodejs
cd /opt/RuoYi-Vue/ruoyi-ui
npm install --registry https://registry.npmmirror.com
npm run build:prod          # 生成 dist 目录
rm -rf /var/www/html/*
cp -r dist/* /var/www/html/
chown -R www-data:www-data /var/www/html

配置 /etc/nginx/sites-available/ruoyi

server {
    listen 80;
    server_name _;
    root /var/www/html;
    index index.html;
    location / {
        try_files $uri $uri/ /index.html;
    }
    location /prod-api/ {          # 前端统一代理前缀
        proxy_pass http://10.0.0.99:8080/;  # 先指向 slave
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
    }
}

启用:

ln -s /etc/nginx/sites-available/ruoyi /etc/nginx/sites-enabled/
nginx -t
systemctl restart nginx

四、slave(10.0.0.99)

1. 安装 JDK(同 master)

# 同样装 JDK17
apt update && apt -y install openjdk-17-jdk
java -version

2. 传 jar 并启动

mkdir -p /opt/ruoyi
scp root@10.0.0.101:/opt/RuoYi-Vue/ruoyi-admin/target/ruoyi-admin.jar /opt/ruoyi/

写 systemd 守护 /etc/systemd/system/ruoyi.service

[Unit]
Description=RuoYi Admin
After=network.target

[Service]
Type=simple
User=root
WorkingDirectory=/opt/ruoyi
ExecStart=/usr/bin/java -jar ruoyi-admin.jar
Restart=always

[Install]
WantedBy=multi-user.target

启动:

java -jar ruoyi-admin.jar
systemctl daemon-reload
systemctl enable --now ruoyi
tail -f /opt/ruoyi/logs/sys-info.log   # 看到“Started RuoYiApplication”即成功

五、验证

Q.E.D.