若依管理系统部署到服务器需要的配置是什么?

将若依(RuoYi)管理系统部署到服务器,通常涉及后端(Spring Boot)前端(Vue)的分离部署或单体部署。以下是基于生产环境的标准配置清单与关键步骤:

1. 基础运行环境

若依基于 Java Spring Boot 开发,因此服务器必须安装以下基础软件:

  • JDK (Java Development Kit)
    • 版本要求:根据项目使用的框架版本决定。
      • RuoYi-Vue-Plus / RuoYi-Vue: 通常推荐 JDK 1.8JDK 17(需确认 pom.xml 中的 <java.version>)。
      • RuoYi-Cloud (微服务版): 推荐 JDK 1.8JDK 17
    • 配置:设置环境变量 JAVA_HOMEPATH
  • 数据库 (MySQL)
    • 版本:推荐 MySQL 5.7MySQL 8.0+
    • 字符集:务必设置为 utf8mb4,排序规则为 utf8mb4_general_ciutf8mb4_0900_ai_ci
    • 初始化:导入若依提供的 SQL 脚本 (ruoyi.sql)。
  • Redis
    • 用途:用于缓存用户 Token、验证码、字典数据等。
    • 版本:推荐 Redis 5.x 或 6.x。
    • 配置:确保服务器可访问 Redis 端口(默认 6379),并配置好密码(如有)。
  • Nginx (仅用于前端静态资源托管或反向X_X)
    • 用途:处理前端 Vue 打包后的静态文件,并转发 API 请求到后端。
    • 注意:如果是前后端分离部署,Nginx 是必须的;如果是单体部署(后端直接跑,前端在同一个 Jar 包里),则不需要 Nginx,但建议加上以提升性能和安全。

2. 项目构建与依赖

在服务器上部署前,需要在本地或服务器上进行编译打包:

A. 后端打包 (Jar)

  1. 进入后端目录 ruoyi-admin (或对应模块)。
  2. 执行 Maven 命令:
    mvn clean package -Dmaven.test.skip=true
  3. 生成的目标文件位于 target/ruoyi-admin.jar

B. 前端打包 (Dist)

  1. 进入前端目录 ruoyi-ui
  2. 安装依赖(需 Node.js 环境):
    npm install
  3. 打包生成静态文件:
    npm run build:prod
  4. 生成的文件夹 dist 包含 index.html, js, css 等文件。

3. 核心配置文件修改

打包完成后,必须修改配置文件以适配生产环境。

A. 后端配置 (application.ymlapplication-prod.yml)

src/main/resources 下找到配置文件,重点修改以下内容:

spring:
  datasource:
    url: jdbc:mysql://localhost:3306/ry?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
    username: root
    password: your_password
    driver-class-name: com.mysql.cj.jdbc.Driver

  redis:
    host: localhost
    port: 6379
    password: your_redis_password # 如果有密码
    database: 0

# 若依特有的配置
ruoyi:
  profile: prod # 指定使用生产环境配置
  # 上传路径配置 (非常重要,否则图片无法显示)
  upload:
    path: /home/ruoyi/upload # 服务器上的绝对路径
    domain: http://your-domain.com/upload # 对外访问的 URL 地址

注意:生产环境建议开启 HTTPS,并在 Nginx 层配置 SSL 证书。

B. 前端配置 (vue.config.js)

修改 vite.config.js (Vite 版) 或 vue.config.js (Webpack 版),主要调整:

  1. Base: 设置为 / 或具体的子路径。
  2. OutputDir: 保持默认的 dist
  3. Proxy: 生产环境通常由 Nginx 处理转发,这里可以注释掉或移除开发时的X_X配置。
  4. API 地址: 确保接口请求地址指向服务器的 IP 或域名,而不是 localhost

4. 服务器部署步骤

方案一:前后端分离部署(推荐)

  1. 上传文件
    • 将后端 ruoyi-admin.jar 上传至服务器(如 /opt/ruoyi/)。
    • 将前端 dist 目录下的所有文件上传至 Nginx 的 html 目录(如 /usr/share/nginx/html/)。
  2. 配置 Nginx

    server {
        listen 80;
        server_name your-domain.com; # 替换为你的域名或 IP
    
        # 前端静态资源
        location / {
            root /usr/share/nginx/html;
            index index.html index.htm;
            try_files $uri $uri/ /index.html; # 解决 Vue 路由刷新 404 问题
        }
    
        # 后端 API 转发
        location /login, /system/user/list { # 根据实际情况匹配 API 路径
            proxy_pass http://127.0.0.1:8080; # 后端服务端口
            proxy_set_header Host $host;
            proxy_set_header X-Real-IP $remote_addr;
        }
    
        # 文件上传下载配置
        location /upload {
            alias /home/ruoyi/upload; # 映射到后端配置的上传目录
            expires 30d;
        }
    }
  3. 启动后端
    nohup java -jar ruoyi-admin.jar --spring.profiles.active=prod > log.txt 2>&1 &

    (或者使用 Systemd 管理服务)

方案二:单体部署(Jar 包内嵌前端)

若依部分版本支持将前端打包后嵌入 Jar 包,此时只需:

  1. 修改 application.yml 中的 spring.mvc.static-path-pattern
  2. 直接启动 Jar 包即可,无需 Nginx。
    注:现代开发更推荐前后端分离,此方案较少用。

5. 安全与运维检查清单

部署完成后,请务必检查以下几点:

  1. 防火墙:开放必要端口(如 80, 443, 8080),关闭不必要的端口。
  2. 数据库权限:禁止远程 root 登录,创建专用数据库账号并限制 IP。
  3. 日志轮转:配置 logback-spring.xml 或使用 logrotate 防止日志占满磁盘。
  4. 定时任务:检查 Quartz 表结构是否正确,确保定时任务能正常触发。
  5. 备份策略:建立定期备份 MySQL 数据和上传文件的脚本。

通过以上配置,即可实现若依管理系统的稳定生产环境部署。

未经允许不得转载:CLOUD云枢 » 若依管理系统部署到服务器需要的配置是什么?