开发喵星球

若依框架在Linux服务器上部署(369)

本文将详细介绍如何将若依前后端分离项目(RuoYi_Vue)发布到Linux服务器,并完成线上部署。在阅读前,请确保你已在本地成功运行项目,这有助于快速排查潜在问题,并确保部署顺利进行。

一、部署环境准备

在Linux服务器上部署若依之前,需要先确保以下环境已经准备好。

本教程基于 Linux Ubuntu 操作系统。

二、项目打包

1. 后端项目打包

1.1 修改后端配置文件

在打包后端项目之前,需要修改以下配置文件,使其适应Linux环境。

第一处修改application.yml 中的 ruoyi.profile 属性。
默认配置适用于 Windows 路径,而 Linux 下的文件系统结构不同,必须修改该路径,否则文件上传功能可能无法正常工作。

ruoyi:
  profile: /home/ruoyi/uploadPath

第二处修改application-druid.yml 中的数据库连接信息。
检查并确保配置了正确的数据库地址、用户名和密码,如果不正确,启动后端时将会出现数据库连接失败的错误。

spring:
  datasource:
    druid:
      url: jdbc:mysql://你的数据库地址:3306/ruoyi?useUnicode=true&characterEncoding=utf-8
      username: 数据库用户名
      password: 数据库密码

第三处修改application.yml 中的 Redis 连接配置。如果使用远程 Redis 服务器,需设置远程服务器的IP地址;如果 Redis 配置了密码,也需要在此填写。

spring:
  redis:
    host: 你的redis服务器IP
    password: redis密码 (如果有)

1.2 后端打包方法

完成配置文件的修改后,接下来进行打包。若依后端使用 Maven 构建,提供多种打包方式。

方法一:在IDE(如 IntelliJ IDEA)中,直接通过 Maven 插件的 package 命令打包。

方法二:使用命令行执行以下 Maven 命令,跳过测试直接打包:

mvn clean package -Dmaven.test.skip=true

打包成功后,在 ruoyi-admin 模块下的 target 目录中会生成 ruoyi-admin.jar

2. 前端项目打包

前端打包非常简单,进入 ruoyi-ui 目录后,执行以下命令:

# 打包生产环境
npm run build:prod

打包完成后,会在 dist 目录下生成前端静态资源文件,这些文件将部署到 Nginx 上。

三、项目部署

1. 上传文件

通过 SCP 等工具将 ruoyi-admin.jardist 文件夹上传到服务器指定目录,同时将数据库 SQL 文件一并上传。

2. 创建数据库并导入SQL

在 MySQL 中创建数据库,并导入 SQL 文件。

-- 创建数据库
create database ruoyi default character set utf8mb4 collate utf8mb4_bin;

-- 导入数据库文件
use ruoyi;
source /上传路径/ry_20230706.sql;
source /上传路径/quartz.sql;

-- 检查表是否成功导入
show tables;

3. 启动 Redis 服务

Redis 是若依项目的缓存管理工具,启动 Redis 服务并检查其状态。

# 启动 Redis 服务
sudo service redis-server start

# 检查 Redis 状态
sudo service redis-server status

4. 启动 Nginx 服务

确保 Nginx 已安装并启动,用于前端的静态资源托管和接口代理。

sudo /etc/init.d/nginx start

5. 启动后端服务

通过以下命令后台启动后端服务:

java -jar ruoyi-admin.jar &

可以通过 ps 命令查看后端服务的运行情况:

ps -ef | grep ruoyi-admin.jar

6. 配置 Nginx 并启动前端服务

前端静态资源通过 Nginx 提供。进入 Nginx 配置目录并修改配置文件:

cd /etc/nginx
vim nginx.conf

配置内容如下:

server {
    listen       80;
    server_name  localhost;

    # 前端静态资源路径
    location / {
        root /usr/local/project/ruoyi/ruoyi-ui/dist;
        try_files uriuri/ /index.html;
        index  index.html;
    }

    # 后端接口代理
    location /prod-api/ {
        proxy_set_header Host http_host;
        proxy_set_header X-Real-IPremote_addr;
        proxy_pass http://localhost:8080/;
    }

    error_page   500 502 503 504  /50x.html;
    location = /50x.html {
        root   html;
    }
}

保存并退出后,重启 Nginx 服务:

systemctl restart nginx

四、项目预览

部署完成后,可以通过服务器的IP地址访问项目,默认路径为:

http://你的服务器IP地址/login

五、常见问题及解决方案

通过本篇教程,您可以顺利地在Linux服务器上部署若依项目。正确配置各个服务并依次启动,将确保项目正常运行。如果遇到问题,请根据日志进行排查。

   
分类:Java/OOP 作者:无限繁荣, 吴蓉 发表于:2024-10-23 09:07:31 阅读量:170
<<   >>


powered by kaifamiao