2025最新!芋道ruoyi-vue-pro保姆级部署指南:从0到1搭建企业级后台系统
2025最新!芋道ruoyi-vue-pro保姆级部署指南:从0到1搭建企业级后台系统
你还在为开源项目部署繁琐而头疼?跟着教程一步步操作仍报错?本文将以ruoyi-vue-pro(芋道源码)为例,提供一套经过生产环境验证的超详细部署方案,即使是零基础小白也能顺利完成部署。读完本文后,你将掌握Docker容器化部署全流程、常见问题排查方法以及性能优化技巧,让你从部署新手秒变专家。
一、项目简介:为什么选择ruoyi-vue-pro?
芋道源码(ruoyi-vue-pro)是基于Spring Boot + MyBatis Plus + Vue & Element实现的企业级快速开发平台,支持RBAC动态权限、数据权限、SaaS多租户、Flowable工作流等企业级特性。与其他同类项目相比,它具有以下优势:
1.1 功能全面,开箱即用
系统内置了丰富的业务模块,包括:
- 通用模块:系统功能、基础设施
- 业务模块:工作流程、支付系统、数据报表、会员中心
- 行业解决方案:企业管理系统、CRM系统、商城系统、AI大模型应用
通过代码生成器可一键生成前后端代码,极大提升开发效率。
1.2 架构先进,性能卓越
采用分层架构设计,严格遵循《阿里巴巴Java开发手册》规范:
技术栈选用Spring Boot 2.7.18、Vue 3.2等稳定版本,同时支持MySQL、Oracle、PostgreSQL等多种数据库,满足不同企业的技术选型需求。
1.3 完全开源,无商业限制
采用MIT开源协议,个人与企业可100%免费使用,无需保留任何版权信息。代码注释详尽,113770行Java代码配有42462行注释,便于二次开发。
二、环境准备:部署前的检查清单
在开始部署前,请确保你的环境满足以下要求:
2.1 硬件要求
| 配置项 | 最低配置 | 推荐配置 |
|---|---|---|
| CPU | 2核 | 4核及以上 |
| 内存 | 4GB | 8GB及以上 |
| 磁盘 | 40GB可用空间 | 100GB SSD |
| 网络 | 稳定互联网连接 | - |
2.2 软件要求
| 软件 | 版本要求 | 用途 |
|---|---|---|
| Docker | 20.10.0+ | 容器化部署 |
| Docker Compose | v2+ | 容器编排 |
| Git | 2.20.0+ | 代码拉取 |
| JDK | 1.8+ | 后端环境(可选,Docker部署无需) |
| Node.js | 14.0.0+ | 前端构建(可选,Docker部署无需) |
2.3 环境检查
执行以下命令检查Docker环境是否就绪:
# 检查Docker版本
docker --version
# 检查Docker Compose版本
docker compose version
# 确保Docker服务正在运行
systemctl status docker
如果输出类似以下内容,说明环境准备就绪:
Docker version 20.10.21, build baeda1f
Docker Compose version v2.12.2
● docker.service - Docker Application Container Engine
Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)
Active: active (running) since Wed 2023-11-01 10:00:00 CST; 1h ago
三、部署流程:Docker容器化部署(推荐)
3.1 拉取代码
# 克隆代码仓库
git clone https://gitcode.com/yudaocode/ruoyi-vue-pro.git
# 进入项目目录
cd ruoyi-vue-pro
3.2 构建后端Jar包
# 创建Maven缓存卷,加速后续构建
docker volume create --name yudao-maven-repo
# 使用Maven容器构建项目
docker run -it --rm --name yudao-maven \
-v yudao-maven-repo:/root/.m2 \
-v $PWD:/usr/src/mymaven \
-w /usr/src/mymaven \
maven mvn clean install package '-Dmaven.test.skip=true'
构建成功后,会在yudao-server/target/目录下生成yudao-server.jar文件。
3.3 配置环境变量
项目提供了默认的环境变量配置文件script/docker/docker.env,你可以根据需要修改:
# 进入Docker配置目录
cd script/docker
# 查看环境变量配置
cat docker.env
关键配置项说明:
| 配置项 | 说明 | 默认值 |
|---|---|---|
| MYSQL_ROOT_PASSWORD | 数据库密码 | 123456 |
| SPRING_PROFILES_ACTIVE | Spring环境配置 | prod |
| SERVER_PORT | 后端服务端口 | 48080 |
| UI_PORT | 前端访问端口 | 8080 |
3.4 启动服务
# 使用Docker Compose启动所有服务
docker compose --env-file docker.env up -d
首次启动会自动构建镜像,可能需要5-10分钟,请耐心等待。启动成功后会看到类似以下输出:
[+] Running 5/5
✔ Network docker_default Created
✔ Container docker-mysql-1 Started
✔ Container docker-redis-1 Started
✔ Container docker-server-1 Started
✔ Container docker-ui-1 Started
3.5 查看服务状态
# 查看正在运行的容器
docker compose ps
# 查看服务日志
docker compose logs -f
当看到以下日志时,表示服务启动成功:
server_1 | 2023-11-01 10:10:00.000 INFO 1 --- [ main] c.i.yudao.YudaoApplication : Started YudaoApplication in 60.0 seconds (JVM running for 61.5)
四、访问系统:验证部署结果
4.1 访问管理后台
打开浏览器,访问以下地址:
- 前端地址:http://localhost:8080
- 后端API地址:http://localhost:48080
使用默认账号密码登录:
- 用户名:admin
- 密码:admin123
成功登录后,你将看到系统首页:
+---------------------------------------------------+
| 工作台 |
+---------------------------------------------------+
| 待办事项 | 通知公告 | 系统监控 | 快速操作 |
+---------------------------------------------------+
| |
| 今日数据统计 最近登录日志 |
| |
| 用户总数:100 1. admin - 今天 |
| 部门总数:10 2. test - 昨天 |
| 角色总数:20 3. demo - 3天前 |
| |
+---------------------------------------------------+
4.2 验证核心功能
登录成功后,建议验证以下核心功能是否正常:
- 用户管理:查看用户列表,尝试新增/编辑用户
- 角色管理:检查角色权限配置是否正常
- 菜单管理:确认菜单显示是否完整
- 系统监控:查看服务器监控数据是否正常
- 代码生成:尝试生成一个简单的CRUD模块
五、常见问题:部署踩坑解决方案
5.1 端口占用问题
问题现象:启动时报错Bind for 0.0.0.0:8080 failed: port is already allocated
解决方案:
- 查找占用端口的进程:
# 查找占用8080端口的进程
netstat -tulpn | grep 8080
- 停止占用进程或修改端口映射:
# 修改docker-compose.yml中的端口映射
vi docker-compose.yml
# 将8080:8080修改为其他端口,如8081:8080
ports:
- "8081:8080"
5.2 数据库连接失败
问题现象:后端服务日志报错Could not create connection to database server
解决方案:
- 检查MySQL容器是否正常运行:
docker compose logs mysql
- 验证数据库密码是否正确:
# 进入MySQL容器
docker compose exec mysql mysql -uroot -p
# 输入密码123456,若能成功登录说明密码正确
- 检查网络连接是否正常:
# 进入后端容器测试网络连通性
docker compose exec server ping mysql
5.3 前端访问后端API跨域问题
问题现象:前端页面能打开,但操作时提示"跨域访问被拒绝"
解决方案:
- 检查Nginx配置是否正确:
cat yudao-ui-admin/nginx.conf
确保配置了正确的API转发:
location /api/ {
proxy_pass http://server:48080/api/;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
- 重启Nginx服务:
docker compose restart ui
六、性能优化:让系统飞起来
6.1 JVM参数优化
修改docker-compose.yml中的JVM参数,根据服务器内存调整:
environment:
- JAVA_OPTS=-Xms512m -Xmx1024m -XX:+UseG1GC
6.2 数据库优化
- 修改MySQL配置,增加以下内容到
docker-compose.yml:
command: --default-storage-engine=InnoDB --innodb_buffer_pool_size=256M
- 开启Redis持久化:
command: redis-server --appendonly yes
6.3 应用优化
- 开启生产环境配置:
# 修改docker.env文件
SPRING_PROFILES_ACTIVE=prod
- 配置缓存策略:
# 在系统管理 -> 参数配置中修改
CACHE_TYPE=redis
REDIS_DATABASE=1
七、总结与展望
通过本文的步骤,你已经成功部署了ruoyi-vue-pro系统。回顾整个过程,我们从环境准备到最终部署验证,涵盖了Docker容器化部署的各个方面。这套部署方案不仅适用于开发环境,稍作调整即可应用于生产环境。
7.1 后续学习路径
- 深入了解系统架构:阅读
yudao-framework模块下的文档,了解系统设计理念 - 学习代码生成器使用:掌握一键生成CRUD代码的技巧,提升开发效率
- 研究工作流引擎:学习Flowable工作流的配置与使用,实现复杂业务流程
- 探索多租户功能:了解SaaS多租户架构设计,满足企业级需求
7.2 社区资源
- 官方文档:https://doc.iocoder.cn/
- 视频教程:https://doc.iocoder.cn/video/
- GitCode仓库:https://gitcode.com/yudaocode/ruoyi-vue-pro
- 社区交流:加入官方QQ群获取技术支持
7.3 最后
ruoyi-vue-pro作为一款优秀的开源快速开发平台,提供了企业级应用所需的大部分功能模块。希望本文的部署指南能帮助你顺利搭建系统,为你的项目开发节省宝贵时间。如果你觉得这个项目有价值,请给它一个Star支持作者的持续开发!
部署过程中遇到任何问题,欢迎在评论区留言讨论,我会尽力解答。祝你的项目开发顺利!
更多推荐

所有评论(0)