Ruoyi-vue项目上线生产环境,CentOS或Ubuntu最低系统配置推荐是多少?

Ruoyi-Vue 是一个前后端分离的 Java + Vue 项目(典型架构:后端 Spring Boot + MySQL/Oracle + Redis,前端 Vue CLI 构建为静态资源,通常由 Nginx 托管)。其生产环境系统配置需分别考虑 后端服务(Java)前端静态资源(Nginx)数据库(MySQL/Redis)整体并发承载能力

以下是针对 中小规模企业内部管理系统或轻量级 SaaS 应用(日活用户 < 1000,QPS < 50)的最低推荐配置,兼顾稳定性与可维护性:


✅ 推荐最低生产环境配置(单机部署场景)

组件 最低推荐配置(CentOS 7+/Ubuntu 20.04+) 说明
操作系统 ✅ CentOS 7.9 / CentOS 8.5+(已 EOL 建议 8.5 或 9.x)
✅ Ubuntu 20.04 LTS / 22.04 LTS(更推荐,长期支持、Java/Node/Nginx 兼容性好)
避免使用 CentOS 6 或 Ubuntu 18.04(已停止主流支持);需启用 systemdfirewalld/ufw
CPU ⚙️ 2 核(vCPU) Spring Boot 默认启动占用约 1~1.5 核;预留余量应对 GC、定时任务、日志写入等
内存 🧠 4 GB RAM强烈建议 ≥ 6 GB • Java 后端(-Xms1g -Xmx2g)需 2~3GB
• Nginx + Redis(默认配置)约 300~500MB
• OS 及其他进程需 ≥ 500MB
⚠️ 若仅配 2GB,极易因 OOM 被 Linux killer 杀掉 Java 进程!
磁盘 💾 40 GB SSD(系统盘) • OS + JDK + Ruoyi 后端 Jar + Nginx + Redis + 日志(建议 /var/log/ruoyi 单独挂载)
• MySQL 数据库建议单独挂载数据盘(如 /data/mysql),最小 20GB 起(视业务数据量)
JDK OpenJDK 11 LTS(如 Temurin 11.0.22+ 或 Amazon Corretto 11) Ruoyi-vue 3.x/4.x 官方要求 JDK 11+;不推荐 JDK 8(已过时且存在安全风险);避免 Oracle JDK 商业授权问题
数据库 🗃️ MySQL 5.7.30+ 或 8.0.20+(推荐 8.0)
或 PostgreSQL 12+(若选用)
内存中需预留足够 innodb_buffer_pool_size(建议设为物理内存 50%~70%,但单机部署时勿超 2GB)
Redis 🧠 Redis 6.2+(内存 256MB~512MB) 用于验证码、在线用户、缓存等;可用 redis.conf 限制 maxmemory 256mb

📌 关键注意事项(避坑指南)

  1. 严禁在 2GB 内存机器上部署生产环境!
    → Java 进程 + MySQL + Redis + Nginx + OS 基本就占满,OOM 风险极高。4GB 是底线,6GB 更稳妥。

  2. OS 版本选择优先级:
    Ubuntu 22.04 LTS(推荐) → 社区活跃、软件源新、Docker/K8s 支持好、安全更新及时
    ✅ CentOS Stream 9 或 Rocky Linux 9 → 替代 CentOS 的稳定选择(避免用已 EOL 的 CentOS 7/8)
    ❌ CentOS 6 / Ubuntu 16.04 / Debian 9 等老旧系统(无安全更新,组件兼容差)

  3. 前端部署方式:

    • Ruoyi-Vue 前端构建后是纯静态文件(dist/),必须通过 Nginx/Apache 托管不可直接用 npm run serve 上线!
    • Nginx 最小配置示例(/etc/nginx/conf.d/ruoyi.conf):
      server {
       listen 80;
       server_name your-domain.com;
       root /www/ruoyi-ui/dist;
       index index.html;
       location / {
           try_files $uri $uri/ /index.html;
       }
       location /prod-api/ {
           proxy_pass http://127.0.0.1:8080/;
           proxy_set_header Host $host;
           proxy_set_header X-Real-IP $remote_addr;
       }
      }
  4. 后端 JVM 参数建议(application.yml 同级添加 ruoyi.sh 启动脚本):

    nohup java -Xms1g -Xmx2g -XX:+UseG1GC -XX:MaxGCPauseMillis=200 
     -Dspring.profiles.active=prod 
     -jar ruoyi-admin.jar > /dev/null 2>&1 &
  5. 安全加固必做项:

    • 关闭 SSH 密码登录,改用密钥认证
    • 使用 ufw(Ubuntu)或 firewalld(CentOS)仅开放 80/443/22(或自定义管理端口)
    • MySQL/Redis 绑定 127.0.0.1,禁用远程 root 访问
    • Ruoyi 后台默认账号 admin/admin123 上线前必须修改!

📈 扩展建议(按业务增长演进)

场景 推荐升级方向
用户量 > 2000 / QPS > 100 拆分部署:Nginx + 后端(2核4G×2) + MySQL主从 + Redis哨兵
高可用要求 Nginx 集群 + Spring Cloud Alibaba(Ruoyi-cloud 版) + MySQL MHA
容器化 Docker + docker-compose(官方提供 docker-compose.yml 示例)
云环境 阿里云 ECS(ecs.c6.large)、腾讯云 CVM(S5.SMALL2)均满足最低要求

总结一句话推荐:

生产环境首选 Ubuntu 22.04 LTS + 2核4GB内存 + 40GB SSD + OpenJDK 11 + MySQL 8.0 + Redis 7.x,并严格遵循安全配置规范。低于此配置仅建议用于开发测试,切勿上线!

如需,我可为你提供:

  • 完整的 Ubuntu 22.04 一键部署脚本(含 JDK/MySQL/Nginx/Ruoyi 安装)
  • Ruoyi 生产环境 application-prod.yml 安全配置模板
  • Nginx + HTTPS(Let’s Encrypt)自动配置方案

欢迎继续提问 👇

未经允许不得转载:云知识CLOUD » Ruoyi-vue项目上线生产环境,CentOS或Ubuntu最低系统配置推荐是多少?