第03章 - 环境准备与安装部署
第03章 - 环境准备与安装部署
3.1 开发环境要求
3.1.1 硬件要求
开发环境推荐配置:
| 项目 | 最低配置 | 推荐配置 |
|---|---|---|
| CPU | 4核 | 8核及以上 |
| 内存 | 8GB | 16GB及以上 |
| 硬盘 | 50GB可用空间 | SSD 100GB以上 |
| 网络 | 稳定的网络连接 | 良好的网络环境 |
3.1.2 软件要求
| 软件 | 版本要求 | 用途 |
|---|---|---|
| JDK | 1.8+ | Java运行环境 |
| Maven | 3.6+ | 项目构建工具 |
| MySQL | 5.7+ 或 8.0+ | 关系型数据库 |
| Redis | 5.0+ | 缓存数据库 |
| Nacos | 2.0+ | 注册配置中心 |
| Node.js | 14+ | 前端构建环境 |
| Git | 2.0+ | 版本控制 |
| IDE | IDEA 2020+ | 开发工具 |
3.2 基础环境安装
3.2.1 JDK安装配置
Windows系统安装
-
下载JDK 1.8
-
安装JDK
- 双击安装程序
- 选择安装路径(建议不含中文和空格)
-
配置环境变量
# 新建系统变量 JAVA_HOME = C:\Program Files\Java\jdk1.8.0_xxx # 编辑Path变量,添加 %JAVA_HOME%\bin -
验证安装
java -version javac -version
Linux系统安装
# Ubuntu/Debian
sudo apt update
sudo apt install openjdk-8-jdk
# CentOS/RHEL
sudo yum install java-1.8.0-openjdk-devel
# 验证安装
java -version
3.2.2 Maven安装配置
下载与安装
-
下载Maven
- 官网:https://maven.apache.org/download.cgi
- 选择apache-maven-3.x.x-bin.zip
-
解压到指定目录
C:\Program Files\apache-maven-3.x.x -
配置环境变量
# 新建系统变量 MAVEN_HOME = C:\Program Files\apache-maven-3.x.x # 编辑Path变量,添加 %MAVEN_HOME%\bin -
验证安装
mvn -version
配置阿里云镜像
编辑 %MAVEN_HOME%/conf/settings.xml:
<mirrors>
<mirror>
<id>aliyunmaven</id>
<mirrorOf>*</mirrorOf>
<name>阿里云公共仓库</name>
<url>https://maven.aliyun.com/repository/public</url>
</mirror>
</mirrors>
配置本地仓库
<localRepository>D:\maven\repository</localRepository>
3.2.3 Node.js安装配置
下载与安装
-
下载Node.js LTS版本
- 官网:https://nodejs.org/
- 选择LTS版本(推荐16.x或18.x)
-
安装Node.js
- Windows:运行安装程序
- Linux:使用包管理器或nvm
-
验证安装
node -v npm -v
配置npm镜像
# 设置淘宝镜像
npm config set registry https://registry.npmmirror.com
# 验证配置
npm config get registry
3.2.4 Git安装配置
Windows安装
-
下载Git
-
安装Git
- 运行安装程序
- 使用默认配置即可
-
配置用户信息
git config --global user.name "Your Name" git config --global user.email "your.email@example.com"
3.3 MySQL安装配置
3.3.1 Windows安装
使用安装包安装
-
下载MySQL
- 官网:https://dev.mysql.com/downloads/installer/
- 选择MySQL Installer
-
安装MySQL
- 选择Developer Default或Custom
- 配置root密码
- 配置端口(默认3306)
-
验证安装
mysql -u root -p
3.3.2 Linux安装
Ubuntu/Debian
# 安装MySQL
sudo apt update
sudo apt install mysql-server
# 启动服务
sudo systemctl start mysql
sudo systemctl enable mysql
# 安全配置
sudo mysql_secure_installation
# 登录MySQL
sudo mysql -u root -p
CentOS/RHEL
# 添加MySQL仓库
sudo yum localinstall https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm
# 安装MySQL
sudo yum install mysql-community-server
# 启动服务
sudo systemctl start mysqld
sudo systemctl enable mysqld
# 获取临时密码
sudo grep 'temporary password' /var/log/mysqld.log
# 登录并修改密码
mysql -u root -p
ALTER USER 'root'@'localhost' IDENTIFIED BY 'NewPassword@123';
3.3.3 配置优化
配置文件位置
- Windows:
C:\ProgramData\MySQL\MySQL Server 8.0\my.ini - Linux:
/etc/mysql/mysql.conf.d/mysqld.cnf或/etc/my.cnf
推荐配置
[mysqld]
# 字符集设置
character-set-server=utf8mb4
collation-server=utf8mb4_unicode_ci
# 连接数
max_connections=500
# 缓冲区大小
innodb_buffer_pool_size=1G
# 日志
slow_query_log=1
slow_query_log_file=/var/log/mysql/slow.log
long_query_time=2
# 时区
default-time-zone='+08:00'
# 大小写不敏感
lower_case_table_names=1
3.3.4 创建数据库
-- 创建数据库
CREATE DATABASE `ry-cloud` CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
-- 创建用户
CREATE USER 'ruoyi'@'%' IDENTIFIED BY 'ruoyi@123';
-- 授权
GRANT ALL PRIVILEGES ON `ry-cloud`.* TO 'ruoyi'@'%';
FLUSH PRIVILEGES;
3.4 Redis安装配置
3.4.1 Windows安装
由于Redis官方不支持Windows,可以使用以下方式:
-
使用WSL2
# 在WSL2中安装 sudo apt update sudo apt install redis-server sudo service redis-server start -
使用非官方Windows版本
- 下载:https://github.com/tporadowski/redis/releases
- 解压后运行
redis-server.exe
3.4.2 Linux安装
Ubuntu/Debian
# 安装Redis
sudo apt update
sudo apt install redis-server
# 启动服务
sudo systemctl start redis-server
sudo systemctl enable redis-server
# 验证
redis-cli ping
CentOS/RHEL
# 安装EPEL仓库
sudo yum install epel-release
# 安装Redis
sudo yum install redis
# 启动服务
sudo systemctl start redis
sudo systemctl enable redis
3.4.3 配置优化
编辑配置文件 /etc/redis/redis.conf:
# 绑定地址(允许远程访问)
bind 0.0.0.0
# 端口
port 6379
# 密码(生产环境必须设置)
requirepass your_password
# 最大内存
maxmemory 512mb
# 内存淘汰策略
maxmemory-policy allkeys-lru
# 持久化配置
appendonly yes
appendfsync everysec
# 数据库数量
databases 16
3.5 Nacos安装配置
3.5.1 单机模式安装
下载Nacos
# 下载
wget https://github.com/alibaba/nacos/releases/download/2.2.3/nacos-server-2.2.3.tar.gz
# 解压
tar -xvf nacos-server-2.2.3.tar.gz
cd nacos
配置数据库
-
执行SQL脚本
# 脚本位置:nacos/conf/mysql-schema.sql mysql -u root -p ry-cloud < conf/mysql-schema.sql -
修改配置文件
conf/application.properties# 数据源配置 spring.datasource.platform=mysql db.num=1 db.url.0=jdbc:mysql://127.0.0.1:3306/ry-cloud?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC db.user.0=root db.password.0=your_password
启动Nacos
# Linux/Mac
sh startup.sh -m standalone
# Windows
startup.cmd -m standalone
访问控制台
- 地址:http://localhost:8848/nacos
- 默认账号:nacos
- 默认密码:nacos
3.5.2 导入配置
RuoYi-Cloud需要在Nacos中导入配置文件,配置文件位于项目的 sql/ry_config_*.sql 中。
方式一:使用SQL导入
mysql -u root -p ry-cloud < sql/ry_config_20250902.sql
方式二:手动创建
在Nacos控制台中创建以下配置(命名空间默认public):
| Data ID | Group | 说明 |
|---|---|---|
| ruoyi-gateway-dev.yml | DEFAULT_GROUP | 网关配置 |
| ruoyi-auth-dev.yml | DEFAULT_GROUP | 认证配置 |
| ruoyi-system-dev.yml | DEFAULT_GROUP | 系统模块配置 |
| ruoyi-gen-dev.yml | DEFAULT_GROUP | 代码生成配置 |
| ruoyi-job-dev.yml | DEFAULT_GROUP | 定时任务配置 |
| ruoyi-file-dev.yml | DEFAULT_GROUP | 文件服务配置 |
| ruoyi-monitor-dev.yml | DEFAULT_GROUP | 监控配置 |
| application-dev.yml | DEFAULT_GROUP | 公共配置 |
3.5.3 配置示例
application-dev.yml(公共配置)
spring:
autoconfigure:
exclude: com.alibaba.druid.spring.boot.autoconfigure.DruidDataSourceAutoConfigure
jackson:
date-format: yyyy-MM-dd HH:mm:ss
time-zone: GMT+8
# feign配置
feign:
sentinel:
enabled: true
okhttp:
enabled: true
httpclient:
enabled: false
client:
config:
default:
connectTimeout: 10000
readTimeout: 10000
compression:
request:
enabled: true
min-request-size: 8192
response:
enabled: true
# 安全配置
security:
# 验证码
captcha:
enabled: true
type: math
# XSS过滤
xss:
enabled: true
excludeUrls:
- /system/notice
# 不校验白名单
ignore:
whites:
- /auth/logout
- /auth/login
- /auth/register
- /*/v3/api-docs
- /csrf
ruoyi-system-dev.yml(系统模块配置)
spring:
redis:
host: localhost
port: 6379
password:
datasource:
druid:
stat-view-servlet:
enabled: true
loginUsername: admin
loginPassword: 123456
dynamic:
druid:
initial-size: 5
min-idle: 5
maxActive: 20
maxWait: 60000
timeBetweenEvictionRunsMillis: 60000
minEvictableIdleTimeMillis: 300000
validationQuery: SELECT 1 FROM DUAL
testWhileIdle: true
testOnBorrow: false
testOnReturn: false
poolPreparedStatements: true
maxPoolPreparedStatementPerConnectionSize: 20
filters: stat,slf4j
connectionProperties: druid.stat.mergeSql\=true;druid.stat.slowSqlMillis\=5000
datasource:
master:
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://localhost:3306/ry-cloud?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
username: root
password: password
slave:
enabled: false
driver-class-name: com.mysql.cj.jdbc.Driver
url:
username:
password:
# mybatis配置
mybatis:
typeAliasesPackage: com.ruoyi.system
mapperLocations: classpath:mapper/**/*.xml
# springdoc配置
springdoc:
gatewayUrl: http://localhost:8080
3.6 项目下载与导入
3.6.1 获取源码
方式一:Git克隆(推荐)
# 从Gitee克隆(推荐,速度快)
git clone https://gitee.com/y_project/RuoYi-Cloud.git
# 从GitHub克隆
git clone https://github.com/yangzongzhuan/RuoYi-Cloud.git
方式二:下载ZIP
- Gitee: https://gitee.com/y_project/RuoYi-Cloud
- GitHub: https://github.com/yangzongzhuan/RuoYi-Cloud
- 点击"下载ZIP"
3.6.2 导入IDEA
-
打开IDEA
- File -> Open -> 选择项目根目录
-
等待Maven下载依赖
- 首次导入需要下载大量依赖
- 建议使用阿里云镜像加速
-
配置JDK
- File -> Project Structure -> Project Settings -> Project
- 选择JDK 1.8
-
刷新Maven
- 右键pom.xml -> Maven -> Reload Project
3.6.3 项目结构说明
RuoYi-Cloud/
├── bin/ # 执行脚本
│ ├── clean.bat # 清理脚本
│ ├── package.bat # 打包脚本
│ └── run.bat # 运行脚本
├── docker/ # Docker配置
│ ├── docker-compose.yml # 编排文件
│ ├── mysql/ # MySQL配置
│ ├── nginx/ # Nginx配置
│ ├── nacos/ # Nacos配置
│ ├── redis/ # Redis配置
│ └── ruoyi/ # 应用Dockerfile
├── ruoyi-api/ # 接口模块
│ └── ruoyi-api-system/ # 系统接口
├── ruoyi-auth/ # 认证中心
├── ruoyi-common/ # 通用模块
│ ├── ruoyi-common-core/ # 核心模块
│ ├── ruoyi-common-datascope/ # 数据权限
│ ├── ruoyi-common-datasource/ # 多数据源
│ ├── ruoyi-common-log/ # 日志模块
│ ├── ruoyi-common-redis/ # 缓存模块
│ ├── ruoyi-common-seata/ # 分布式事务
│ ├── ruoyi-common-security/ # 安全模块
│ ├── ruoyi-common-sensitive/ # 数据脱敏
│ └── ruoyi-common-swagger/ # 接口文档
├── ruoyi-gateway/ # 网关服务
├── ruoyi-modules/ # 业务模块
│ ├── ruoyi-file/ # 文件服务
│ ├── ruoyi-gen/ # 代码生成
│ ├── ruoyi-job/ # 定时任务
│ └── ruoyi-system/ # 系统模块
├── ruoyi-ui/ # 前端项目
├── ruoyi-visual/ # 可视化模块
│ └── ruoyi-monitor/ # 监控中心
├── sql/ # SQL脚本
│ ├── quartz.sql # Quartz表结构
│ ├── ry_*.sql # 业务表结构
│ └── ry_config_*.sql # Nacos配置
└── pom.xml # 父工程POM
3.7 数据库初始化
3.7.1 执行SQL脚本
按顺序执行以下SQL脚本:
# 1. 创建数据库
CREATE DATABASE `ry-cloud` CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
# 2. 导入业务表结构和数据
mysql -u root -p ry-cloud < sql/ry_20250523.sql
# 3. 导入Quartz表结构
mysql -u root -p ry-cloud < sql/quartz.sql
# 4. 导入Nacos配置(如果使用MySQL存储Nacos配置)
mysql -u root -p ry-cloud < sql/ry_config_20250902.sql
# 5. 如果使用Seata,导入Seata表结构
mysql -u root -p ry-cloud < sql/ry_seata_20210128.sql
3.7.2 数据库表说明
系统管理表
| 表名 | 说明 |
|---|---|
| sys_user | 用户表 |
| sys_dept | 部门表 |
| sys_role | 角色表 |
| sys_menu | 菜单表 |
| sys_user_role | 用户角色关联表 |
| sys_role_menu | 角色菜单关联表 |
| sys_role_dept | 角色部门关联表 |
| sys_post | 岗位表 |
| sys_user_post | 用户岗位关联表 |
| sys_dict_type | 字典类型表 |
| sys_dict_data | 字典数据表 |
| sys_config | 参数配置表 |
| sys_notice | 通知公告表 |
| sys_oper_log | 操作日志表 |
| sys_logininfor | 登录日志表 |
定时任务表
| 表名 | 说明 |
|---|---|
| sys_job | 定时任务表 |
| sys_job_log | 定时任务日志表 |
| QRTZ_* | Quartz相关表 |
代码生成表
| 表名 | 说明 |
|---|---|
| gen_table | 代码生成业务表 |
| gen_table_column | 代码生成字段表 |
3.8 后端项目启动
3.8.1 启动顺序
RuoYi-Cloud各服务需要按照以下顺序启动:
1. Nacos(注册中心、配置中心)
2. Redis(缓存服务)
3. MySQL(数据库服务)
4. ruoyi-gateway(网关服务)
5. ruoyi-auth(认证中心)
6. ruoyi-system(系统模块)
7. 其他业务模块(可选)
3.8.2 IDEA启动方式
-
配置启动项
在IDEA中创建Spring Boot启动配置:
- Run -> Edit Configurations -> + -> Spring Boot
- Name: RuoYiGatewayApplication
- Main class: com.ruoyi.gateway.RuoYiGatewayApplication
- Active profiles: dev
-
启动各服务
按顺序启动以下Application类:
com.ruoyi.gateway.RuoYiGatewayApplication com.ruoyi.auth.RuoYiAuthApplication com.ruoyi.system.RuoYiSystemApplication com.ruoyi.gen.RuoYiGenApplication (可选) com.ruoyi.job.RuoYiJobApplication (可选) com.ruoyi.file.RuoYiFileApplication (可选) com.ruoyi.modules.monitor.RuoYiMonitorApplication (可选) -
查看启动日志
启动成功后可以在控制台看到类似日志:
Started RuoYiGatewayApplication in x.xxx seconds
3.8.3 命令行启动
# 进入项目目录
cd RuoYi-Cloud
# 打包
mvn clean package -DskipTests
# 启动网关服务
java -jar ruoyi-gateway/target/ruoyi-gateway.jar --spring.profiles.active=dev
# 启动认证服务
java -jar ruoyi-auth/target/ruoyi-auth.jar --spring.profiles.active=dev
# 启动系统服务
java -jar ruoyi-modules/ruoyi-system/target/ruoyi-modules-system.jar --spring.profiles.active=dev
3.8.4 验证后端服务
-
检查Nacos注册
- 访问:http://localhost:8848/nacos
- 服务管理 -> 服务列表
- 确认各服务已注册
-
测试网关
- 访问:http://localhost:8080/system/user/list
- 应返回401未授权(正常)
3.9 前端项目启动
3.9.1 安装依赖
# 进入前端目录
cd ruoyi-ui
# 安装依赖
npm install
# 如果安装失败,尝试
npm install --legacy-peer-deps
3.9.2 开发环境配置
编辑 .env.development:
# 页面标题
VUE_APP_TITLE = 若依管理系统
# 开发环境配置
ENV = 'development'
# 若依管理系统/开发环境
VUE_APP_BASE_API = '/dev-api'
3.9.3 代理配置
编辑 vue.config.js:
module.exports = {
devServer: {
host: '0.0.0.0',
port: 80,
open: true,
proxy: {
[process.env.VUE_APP_BASE_API]: {
target: 'http://localhost:8080',
changeOrigin: true,
pathRewrite: {
['^' + process.env.VUE_APP_BASE_API]: ''
}
}
}
}
}
3.9.4 启动前端
# 开发模式启动
npm run dev
# 生产模式构建
npm run build:prod
3.9.5 访问系统
- 访问地址:http://localhost:80
- 默认账号:admin
- 默认密码:admin123
3.10 常见问题解决
3.10.1 Nacos连接失败
问题:服务启动时提示Nacos连接失败
解决方案:
- 确认Nacos已启动
- 检查配置文件中的Nacos地址
- 检查防火墙端口(8848、9848、9849)
# bootstrap.yml
spring:
cloud:
nacos:
discovery:
server-addr: localhost:8848
config:
server-addr: localhost:8848
3.10.2 Redis连接失败
问题:Redis连接超时或拒绝
解决方案:
- 确认Redis服务已启动
- 检查Redis配置(地址、端口、密码)
- 检查Redis是否允许远程连接
spring:
redis:
host: localhost
port: 6379
password: your_password
3.10.3 MySQL连接失败
问题:数据库连接失败
解决方案:
- 确认MySQL服务已启动
- 检查数据库是否存在
- 检查用户名密码是否正确
- 检查用户权限
-- 授权远程访问
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'password' WITH GRANT OPTION;
FLUSH PRIVILEGES;
3.10.4 前端启动失败
问题:npm install失败
解决方案:
# 清除缓存
npm cache clean --force
# 删除node_modules
rm -rf node_modules
# 删除package-lock.json
rm package-lock.json
# 重新安装
npm install --legacy-peer-deps
3.10.5 验证码不显示
问题:登录页面验证码不显示
解决方案:
- 检查后端服务是否正常
- 检查网关路由配置
- 检查Redis是否正常
- 查看浏览器控制台错误
3.11 小结
本章详细介绍了RuoYi-Cloud的环境准备和安装部署过程,包括:
- 开发环境要求:硬件和软件的最低配置
- 基础环境安装:JDK、Maven、Node.js、Git
- 数据库安装:MySQL和Redis的安装配置
- Nacos安装:注册中心和配置中心的部署
- 项目导入:源码获取和IDEA导入
- 数据库初始化:SQL脚本执行
- 服务启动:后端和前端的启动方式
- 常见问题:常见错误的解决方案
完成以上步骤后,您就可以成功运行RuoYi-Cloud微服务系统了。下一章我们将深入了解各个微服务模块的详细功能。

浙公网安备 33010602011771号