在 Ubuntu 22.04 上部署 RuoYi 框架(通常指若依前后端分离版)需要配置以下环境。RuoYi 是一个基于 Spring Boot + Vue 的开源后台管理系统,部署时需分别配置后端(Java)和前端(Node.js)环境。
一、系统要求
- 操作系统:Ubuntu 22.04 LTS(推荐最小 2GB 内存)
- 用户权限:建议使用
sudo权限的用户操作 - 网络:确保可以访问X_X(用于下载依赖包)
二、后端环境配置(Java + Spring Boot)
1. 安装 Java 8 或 Java 11(推荐 Java 11)
# 更新软件包索引
sudo apt update
# 安装 OpenJDK 11
sudo apt install openjdk-11-jdk -y
# 验证安装
java -version
javac -version
注意:RuoYi 多数版本支持 Java 8 或 11,具体看项目文档。避免使用 Java 17+ 除非明确支持。
2. 设置 JAVA_HOME 环境变量
# 编辑 profile 文件
sudo nano /etc/profile
# 在文件末尾添加(根据实际路径调整)
export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64
export PATH=$JAVA_HOME/bin:$PATH
# 保存并刷新环境变量
source /etc/profile
验证:
echo $JAVA_HOME
3. 安装 Maven(用于构建项目)
sudo apt install maven -y
# 验证
mvn -v
三、数据库环境(MySQL 5.7/8.0)
1. 安装 MySQL Server
sudo apt install mysql-server -y
# 启动并设置开机自启
sudo systemctl start mysql
sudo systemctl enable mysql
2. 初始化安全设置
sudo mysql_secure_installATION
3. 登录 MySQL 并创建 RuoYi 数据库
mysql -u root -p
-- 创建数据库
CREATE DATABASE ruoyi DEFAULT CHARSET utf8mb4 COLLATE utf8mb4_general_ci;
-- 创建用户并授权(示例)
CREATE USER 'ruoyi'@'localhost' IDENTIFIED BY 'your_password';
GRANT ALL PRIVILEGES ON ruoyi.* TO 'ruoyi'@'localhost';
FLUSH PRIVILEGES;
导入
ry_*.sql数据库脚本(从 RuoYi 项目sql/目录获取)
四、缓存服务(Redis,可选但推荐)
RuoYi 使用 Redis 做缓存(如登录 Token、字典缓存等)
sudo apt install redis-server -y
# 启动并启用
sudo systemctl start redis-server
sudo systemctl enable redis-server
# 验证
redis-cli ping # 应返回 PONG
五、前端环境(Node.js + Nginx)
1. 安装 Node.js(推荐 v16/v18)
# 使用官方 NodeSource 仓库安装 Node.js 18
curl -fsSL https://deb.nodesource.com/setup_18.x | sudo -E bash -
sudo apt-get install -y nodejs
# 验证
node -v # 推荐 v16.x ~ v18.x
npm -v
2. 构建前端项目
cd ruoyi-ui
npm install
npm run build:prod
生成的静态文件在 dist/ 目录。
六、Web 服务器(Nginx,部署前端)
1. 安装 Nginx
sudo apt install nginx -y
sudo systemctl start nginx
sudo systemctl enable nginx
2. 配置 Nginx 反向X_X
编辑配置文件:
sudo nano /etc/nginx/sites-available/ruoyi
内容示例:
server {
listen 80;
server_name your_domain_or_ip;
# 前端页面
location / {
root /var/www/ruoyi-ui/dist;
try_files $uri $uri/ /index.html;
}
# 后端 API X_X
location /prod-api/ {
proxy_pass http://localhost:8080/;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
启用站点:
sudo ln -s /etc/nginx/sites-available/ruoyi /etc/nginx/sites-enabled/
sudo rm -f /etc/nginx/sites-enabled/default # 删除默认站点(可选)
sudo nginx -t # 测试配置
sudo systemctl reload nginx
将构建后的 dist 文件复制到 /var/www/ruoyi-ui/dist
七、启动后端服务
1. 打包项目
cd ruoyi
mvn clean package -DskipTests
2. 启动 jar 包
nohup java -jar ruoyi-admin.jar > app.log 2>&1 &
或使用 systemd 管理(推荐生产环境):
# /etc/systemd/system/ruoyi.service
[Unit]
Description=RuoYi Backend
After=network.target
[Service]
Type=simple
User=root
ExecStart=/usr/bin/java -jar /root/ruoyi/ruoyi-admin.jar
Restart=always
[Install]
WantedBy=multi-user.target
启用服务:
sudo systemctl daemon-reload
sudo systemctl start ruoyi
sudo systemctl enable ruoyi
八、开放防火墙端口
sudo ufw allow 80 # HTTP
sudo ufw allow 8080 # 后端端口(如果直接访问)
sudo ufw allow 22 # SSH
sudo ufw enable
九、访问系统
打开浏览器访问:
http://your-server-ip/
默认账号:
- 用户名:admin
- 密码:admin123
十、可选优化
- 使用 HTTPS(Let's Encrypt + Certbot)
- 配置 JVM 参数优化内存(如
-Xms512m -Xmx1024m) - 日志轮转(logrotate)
- 使用 PM2 管理前端开发服务器(仅开发时)
总结:所需环境清单
| 组件 | 版本/说明 |
|---|---|
| OS | Ubuntu 22.04 LTS |
| Java | OpenJDK 8 或 11 |
| Maven | 3.6+ |
| MySQL | 5.7 或 8.0 |
| Redis | 6.0+(可选但推荐) |
| Node.js | v16/v18 |
| Nginx | 1.18+ |
| Git | (用于克隆项目,可选) |
✅ 提示:部署前请确认你使用的是 RuoYi 若依的哪个版本(如 V4.x、V3.x、SpringBoot 版、Cloud 版),不同版本依赖略有差异。
如有具体版本号,可提供更精准配置建议。
CLOUD云计算