若依-环境部署
# 若依-环境部署
# 一、环境准备
在开始部署若依框架之前,你需要确保以下环境已经配置好:
- JDK >= 1.8(推荐使用 1.8 版本):Java 开发环境,建议配置
JAVA_HOME
环境变量。 - MySQL >= 5.7.0(推荐使用 5.7 版本):用于数据存储的关系型数据库。
- Redis >= 3.0:缓存和消息队列服务,若依使用它来管理缓存和分布式锁。
- Maven >= 3.0:用于管理 Java 项目的构建工具。
- Node >= 12:用于前端构建和开发环境的 JavaScript 运行时。
提示:安装完 Node.js 后,建议配置淘宝镜像源以加快依赖安装速度,避免使用
cnpm
,因为cnpm
可能会引起一些不稳定的问题。
# 二、系统运行
# 1. 获取项目源代码
你可以通过 Gitee 克隆若依项目代码:
git clone https://gitee.com/y_project/RuoYi-Vue.git
也可以直接下载并解压到工作目录。
# 2. 后端项目运行
# 2.1 导入项目到 Eclipse
- 打开 Eclipse,选择菜单
File -> Import
。 - 在导入向导中选择
Maven -> Existing Maven Projects
,然后点击Next>
。 - 在
Root Directory
中选择下载或克隆后的若依项目路径。 - 点击
Finish
完成导入。
提示:Eclipse 会自动加载 Maven 依赖包,初次加载可能较慢,具体取决于你的网络情况。
# 2.2 配置数据库
- 创建数据库:在 MySQL 中创建名为
ry-vue
的数据库。 - 导入数据脚本:执行
sql
目录下的ry_2021xxxx.sql
和quartz.sql
文件,初始化数据库表结构和数据。
# 2.3 启动后端应用
找到 com.ruoyi.RuoYiApplication
类,右键选择 Run As -> Java Application
运行后端服务。
启动成功后,你将在控制台看到以下日志输出:
(♥◠‿◠)ノ゙ 若依启动成功 ლ(´ڡ`ლ)゙
提示:后端启动成功后,可以通过
http://localhost:8080
访问 API 服务,但不会直接展示前端页面。要访问前端页面,需继续以下步骤。
# 3. 前端项目运行
# 3.1 进入前端项目目录
在命令行中进入 ruoyi-ui
目录:
cd ruoyi-ui
# 3.2 安装依赖
运行以下命令安装前端依赖:
npm install --registry=https://registry.npmmirror.com
提示:强烈建议使用淘宝镜像源
https://registry.npmmirror.com
以加快依赖下载速度。避免使用cnpm
,因为可能会引发一些无法预料的错误。
# 3.3 启动前端应用
安装完成后,运行以下命令启动前端项目:
npm run dev
前端启动成功后,打开浏览器访问 http://localhost:80
,使用默认账号 admin
和密码 admin123
登录。如果页面展示正常,说明环境搭建成功。
# 三、必要配置
若依的配置主要分为数据库配置和服务器配置。
# 1. 数据库连接配置
编辑 resources
目录下的 application-druid.yml
文件,修改数据库连接信息:
spring:
datasource:
type: com.alibaba.druid.pool.DruidDataSource
driverClassName: com.mysql.cj.jdbc.Driver
druid:
# 主库数据源配置
master:
url: jdbc:mysql://localhost:3306/ry-vue?useUnicode=true&characterEncoding=utf8&useSSL=false
username: root
password: 你的数据库密码
2
3
4
5
6
7
8
9
10
# 2. 服务器配置
编辑 resources
目录下的 application.yml
文件,修改服务器端口和上下文路径:
server:
# 服务器的HTTP端口,默认为80
port: 端口号
servlet:
# 应用的访问路径
context-path: /应用路径
2
3
4
5
6
# 四、系统部署
若依系统可以通过多种方式部署,下面介绍常用的 jar 和 war 部署方法。
# 1. 后端部署
# 1.1 打包项目
进入若依项目的 bin
目录,执行以下命令打包项目:
package.bat
打包成功后,会在 target
目录下生成 jar
或 war
文件。
提示:多模块版本的打包文件会生成在
ruoyi-admin
模块下的target
目录。
# 1.2 部署方式
jar 部署:
使用命令行执行以下命令部署:
java -jar ruoyi.jar
1或者运行
ruoyi/bin/run.bat
脚本。war 部署:
修改
ruoyi/pom.xml
中的packaging
为war
:<packaging>war</packaging>
1将生成的
war
包放入 Tomcat 服务器的webapps
目录下。
提示:如果你不需要内嵌 Tomcat,可以在
pom.xml
中排除相关依赖。
# 2. 前端部署
当项目开发完毕后,可以通过以下命令打包前端项目:
npm run build:prod # 打包正式环境
npm run build:stage # 打包预发布环境
2
构建成功后,打包文件会生成在 dist
目录下。通常情况下,你只需将 dist
目录下的静态文件发布到 Nginx 或其他静态服务器中。
# 3. Nginx 配置
以下是 Nginx 的基本配置示例:
worker_processes 1;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
server {
listen 80;
server_name localhost;
charset utf-8;
location / {
root /home/ruoyi/projects/ruoyi-ui;
try_files $uri $uri/ /index.html;
index index.html index.htm;
}
location /prod-api/ {
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header REMOTE-HOST $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://localhost:8080/;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
}
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
提示:建议开启 Gzip 压缩,以提高静态资源加载速度。
# 五、常见问题与解决方案
# 1. 数据库表不存在或大小写敏感问题
- 解决方案:在
my.cnf
中设置lower_case_table_names=1
,然后重启 MySQL 服务。
# 2. 权限不足,无法写入文件
- 解决方案:检查
application.yml
中的profile
路径,确保有读写权限。