[架构之美]若依框架前后端分离版部署全流程详解(本地+服务器+高级配置)

[架构之美]若依框架前后端分离版部署全流程详解(本地+服务器+高级配置)

若依框架前后端分离版部署全流程详解(本地+服务器+高级配置)

若依(RuoYi)作为一款基于SpringBoot和Vue的权限管理系统,凭借其模块化设计和开箱即用的特性广受开发者欢迎。本文将从本地部署、服务器部署、高级配置三个维度,结合常见问题解决方案,详细讲解若依框架前后端分离版的完整部署流程,助力开发者快速上手。

一、本地部署(开发环境)

#下载地址 https://www.ruoyi.vip/ #环境准备 JDK >=1.8(推荐1.8版本) Mysql >=5.7.0 (推荐5.7版本) Redis >=3.0 Maven >=3.0 Node >=12

1. 环境准备

  • 后端依赖:JDK 1.8+、Maven 3.0+、MySQL 5.7+、Redis 5+
  • 前端依赖:Node.js 14+(推荐16.x)、npm 6+
  • 开发工具:IDEA(后端)、WebStorm/VSCode(前端)

2. 数据库配置

  1. 修改后端配置文件 ruoyi-admin/src/main/resources/application-druid.yml,更新数据库连接信息:

创建数据库 ry-vue,执行项目中的 sql/ry_20240629.sqlsql/quartz.sql 脚本。数据库创建:

在这里插入图片描述
url: jdbc:mysql://localhost:3306/ry-vue?useSSL=false&serverTimezone=Asia/Shanghaiusername: root password:123456
在这里插入图片描述

3. Redis配置

  • 启动Redis服务(Windows可运行 redis-server.exe)。
  • 修改 application.yml 中的Redis配置:
redis:host: localhost port:6379password:
在这里插入图片描述

4. 前端部署

  1. 进入 ruoyi-ui 目录,安装依赖:
#设置默认镜像源npm config set registry https://registry.npmmirror.com npminstall --registry=https://registry.npmmirror.com # 若依赖冲突,使用以下命令解决(可选)npm i --legacy-peer-deps 

2.启动前端:

npm run dev 
在这里插入图片描述

5.后端启动

  • 在IDEA中运行 RuoYiApplication.java,访问 http://localhost:8080 验证。
在这里插入图片描述

二、服务器部署(生产环境)

1. 服务器环境准备

  • 系统:CentOS 7.x/Ubuntu 24.04
  • 工具:Nginx、JDK 1.8、MySQL、Redis、Node.js

2. 前端打包与Nginx配置

  1. 打包生产环境代码:
npm run build:prod # 生成dist目录
在这里插入图片描述
  1. 配置Nginx反向代理:
nginx 默认安装位置 /usr/local/nginx/conf vim nginx.conf 启动或重启:/usr/local/nginx/sbin ./nginx ./nginx -s reload 
 server { listen 80; server_name your_domain.com; location / { root /home/ruoyi-ui/dist; //根据实际情况填写 index index.html; try_files $uri $uri/ /index.html; } # 后端API代理 location /prod-api/ { proxy_pass http://localhost:8080/; proxy_set_header Host $host; } } 

3. 后端打包与运行

  1. 使用Maven打包JAR:
mvn clean package 
在这里插入图片描述
  1. 上传 ruoyi-admin.jar 至服务器,启动服务:
#启动 实际情况后台启动 java -jar ruoyi-admin.jar 
在这里插入图片描述


通过nginx界面访问:

4. 安全组与防火墙

  • 开放端口:80(前端)、8080(后端)、3306(MySQL)、6379(Redis)。根据实际情况开放设置端口。

三、高级部署方案

1. 前后端合并为单一JAR包

  1. 前端修改
    • 路由模式改为 hashsrc/router/index.js)。
    • 调整 .env.production 中的API路径。
  2. 后端集成
    • 添加Thymeleaf依赖,配置静态资源路径。
    • dist 目录放入 resources,修改 ResourcesConfig 资源映射。
  3. 打包后通过 java -jar 启动,访问路径无需Nginx。

2. Tomcat部署(War包)

  1. 修改 ruoyi-adminpom.xml,将 <packaging>jar</packaging> 改为 war
  2. 排除内置Tomcat依赖,添加Servlet API。
  3. 前端 dist 放入Tomcat的 webapps,配置 server.xml 实现路径映射。

四、常见问题与解决方案

问题场景解决方案引用
npm install 失败使用 --legacy-peer-deps 或切换淘宝镜像
启动时报OpenSSL错误package.json 中添加Node参数
数据库连接超时检查MySQL远程访问权限及防火墙规则
前端访问空白页Nginx配置 try_files 或检查路由模式
接口404错误确保Nginx的 proxy_pass 路径与后端一致

总结

本文覆盖了若依框架从本地调试到生产环境部署的全流程,并提供了多种部署方案(JAR/WAR/Nginx集成)。实际部署时需根据项目需求选择合适方式,并注意环境变量、端口权限等细节。若依的灵活架构允许开发者快速扩展,建议结合官方文档与社区资源持续优化。

相关工具下载

如果本教程帮助您解决了问题,请点赞❤️收藏⭐关注支持!欢迎在评论区留言交流技术细节!欲了解密码学知识,请订阅《密码学实战》专栏 → 密码学实战

Read more

OpenClaw配置Bot接入飞书机器人+Kimi2.5

OpenClaw配置Bot接入飞书机器人+Kimi2.5

上一篇文章写了Ubuntu_24.04下安装OpenClaw的过程,这篇文档记录一下接入飞书机器+Kimi2.5。 准备工作 飞书 创建飞书机器人 访问飞书开放平台:https://open.feishu.cn/app,点击创建应用: 填写应用名称和描述后就直接创建: 复制App ID 和 App Secret 创建成功后,在“凭证与基础信息”中找到 App ID 和 App Secret,把这2个信息复制记录下来,后面需要配置到openclaw中 配置权限 点击【权限管理】→【开通权限】 或使用【批量导入/导出权限】,选择导入,输入以下内容,如下图 点击【下一步,确认新增权限】即可开通所需要的权限。 配置事件与回调 说明:这一步的配置需要先讲AppId和AppSecret配置到openclaw成功之后再设置订阅方式,

By Ne0inhk
组建龙虾团队——OpenClaw多机器人构建

组建龙虾团队——OpenClaw多机器人构建

成功搭建了OpenClaw,也成功建立的自己的每日服务,这时候发现,似乎不太敢在当前的机器人中让他做别的事情,生怕会话太多会让他出现遗忘。(尽管我们配置了QMD记忆增强,但毋庸置疑任何技术都是有上限的)。 换做同样的情况,比如在DeepSeek或者豆包之类的对话窗口,我们会习惯性地新建一个对话。那么我们是否可以新建一个机器人,或者多个机器人,让他们各司其职,各尽所能,形成一个相互配合的团队呢~开干吧,没什么不可能的!! 🦞新建一个机器人 来到飞书开发者后台,新创建一个应用,在这里我们以短视频剪辑脚本应用为例。 创建之后,由于我们的openclaw绑定的是之前的飞书渠道,并没有链接到这个应用的APP ID,所以暂时不做其他操作,只需要记录一下他的APP ID和APP Secret。 🦞配置OpenClaw 如果还是按照claw的命令行安装,每一步都有些让人担心害怕,毕竟我们先前已经配置过一次了,接下来的操作,需要小心是否会把以前的配置给覆盖掉。 为了避免这样的不确定性,我们直接去操作他的配置文件 在WSL2终端中进入openclaw目录 cd .openclaw

By Ne0inhk
医疗连续体机器人模块化控制界面设计与Python库应用研究(下)

医疗连续体机器人模块化控制界面设计与Python库应用研究(下)

软件环境部署 系统软件架构以实时性与兼容性为核心设计目标,具体配置如下表所示: 类别配置详情操作系统Ubuntu 20.04 LTS,集成RT_PREEMPT实时内核补丁(调度延迟<1 ms)开发环境Python 3.8核心库组件PyQt5 5.15.4(图形界面)、OpenCV 4.5.5(图像处理)、NumPy 1.21.6(数值计算) 该环境支持模块化控制界面开发与传感器数据的实时融合处理,为连续体机器人的逆运动学求解(如FB CCD算法测试)提供稳定运行基础[16]。 手眼协调校准 为实现视觉引导的精确控制,需完成相机与机器人基坐标系的空间映射校准,具体流程如下: 1. 标识点布置:在机器人末端及各段首尾、中间位置共固定7个反光标识点,构建臂型跟踪特征集[29]; 2. 数据采集:采用NOKOV度量光学动作捕捉系统(8台相机,

By Ne0inhk

OpenClaw中飞书机器人配置指南:如何让群消息免 @ 也能自动回复

用 OpenClaw 做飞书机器人时,默认配置下,群里的消息必须 @ 机器人 才能触发回复。这在很多场景下很不方便——如果希望机器人在群里"隐身"工作,不用 @ 就能自动监听和回复,需要额外配置。 本文记录我解决这个问题的完整过程,供同样踩坑的同学参考。 问题描述 现象: * 飞书群里 @ 机器人 → 正常回复 ✅ * 飞书群里不 @ 机器人 → 没有任何反应 ❌ 环境: * OpenClaw 框架 * 飞书自建应用(机器人) * WebSocket 长连接模式 解决过程 第一步:修改 OpenClaw 配置 在 openclaw.json 中找到飞书渠道配置: "channels":{"feishu":{"requireMention&

By Ne0inhk