当前位置: 首页 > news >正文

Ruoyi安装部署(linux环境、前后端不分离版本)

目录

简介

1 新建目录

2 安装jdk

2.1 jdk下载

2.2 解压并移动文件夹到/data/service目录

2.3 配置环境变量

3 安装maven

3.1 进入官网下载最新的maven

3.2 解压并移动文件夹到/data//service目录

3.3 配置环境变量

3.4 配置本地仓库地址与阿里云镜像

4 安装git

4.1 进入官网下载git

4.2 解压编译安装git

4.3 配置环境变量

4.4 生成/添加ssh公钥

4.4.1 生成公钥

4.4.2 添加公钥到gitee

4.4.3 验证

4.4.4 拉取ruoyi代码

5 安装docker

5.1 卸载旧版本

5.2 安装依赖

5.3 添加源

5.4 安装最新的containerd和docker

5.5 启动docker并配置开机自启

5.6 检测docker版本

5.7 配置阿里云镜像加速器

6 安装mysql

6.1 拉取MySQL5.7镜像

6.2 查看镜像

6.3 创建配置文件

6.4 启动镜像

6.5 进入mysql容器

6.6 进入mysql容器,设置root账户密码为123456并且允许任何ip访问mysql服务器。

7 运行项目准备

7.1 创建数据库以及数据库表

7.2 修改项目配置

7.3 将项目打成jar包

7.4 启动项目

7.5 访问项目


简介

介绍:RuoYi是一个后台管理系统,基于经典技术组合(Spring Boot、Apache Shiro、MyBatis、Thymeleaf)主要目的让开发者注重专注业务,降低技术难度,从而节省人力成本,缩短项目周期,提高软件安全质量。

系统需求

  • JDK >= 1.8
  • MySQL >= 5.7
  • Maven >= 3.0

1 新建目录

#tmp存放临时安装包
mkdir -p /data/tmp
#service存放软件环境
mkdir -p /data/service
#gitee存放代码版本控制库
mkdir -p /data/gitee

2 安装jdk

2.1 jdk下载

官方地址:Java Archive Downloads - Java SE 8u211 and laterhttps://www.oracle.com/java/technologies/javase/javase8u211-later-archive-downloads.html#license-lightbox

账号:307936641@qq.com
密码:Test307936

来自“zxf307946”家人的账号,提供账号的原文链接:不要积分 jdk-8u261-linux-x64.tar.gz_jdk-8u261-linux-x64.tar.gz 下载_zxf307936的博客-CSDN博客

将下载好的文件传到服务器上

2.2 解压并移动文件夹到/data/service目录

tar -zxvf jdk-8u261-linux-x64.tar.gz
mv jdk1.8.0_261 /data/service
cd /data/service
ll

2.3 配置环境变量

vim /etc/profile
export JAVA_HOME=/data/service/jdk1.8.0_261
export PATH=$PATH:$JAVA_HOME/bin

使环境变量生效

source /etc/profile

 检查是否配置成功

java -version

3 安装maven

3.1 进入官网下载最新的maven

Maven – Download Apache Maven

下载后上传服务器

3.2 解压并移动文件夹到/data//service目录

tar -zxvf apache-maven-3.6.3-bin.tar.gz
mv apache-maven-3.6.3 /data/service
cd /data/service
ll

3.3 配置环境变量

vim /etc/profile
export MAVEN_HOME=/data/service/apache-maven-3.6.3
export PATH=$PATH:$MAVEN_HOME/bin

使环境变量生效

source /etc/profile

检查是否配置成功

mvn -v

 

3.4 配置本地仓库地址与阿里云镜像

镜像仓库地址:仓库服务

vim /data/service/apache-maven-3.6.3/conf/setting.xml#配置本地仓库
<localRepository>/data/service/apache-maven-3.6.3/repository</localRepository>#配置阿里云镜像
<mirror><id>aliyunmaven</id><mirrorOf>*</mirrorOf><name>阿里云公共仓库</name><url>https://maven.aliyun.com/repository/public</url>
</mirror>

4 安装git

4.1 进入官网下载git

地址:Index of /pub/software/scm/git/

下载后上传服务器

4.2 解压编译安装git

yum -y groupinstall "Development Tools"
yum install wget unzip gettext-devel openssl-devel perl-CPAN perl-devel zlib-devel libcurl-devel expat-devel -y
cd /data/tmp
tar zxvf git-2.18.0.tar.gz
cd git-2.18.0
./configure --prefix=/data/service/gitee
make && make install

4.3 配置环境变量

vim /etc/profile
export GIT_HOME=/data/service/gitee
export PATH=$PATH:$GIT_HOME/bin

使环境变量生效

source /etc/profile

检查是否配置成功

git --version

 

4.4 生成/添加ssh公钥

参考文献:生成/添加SSH公钥 | Gitee 产品文档

4.4.1 生成公钥

ssh-keygen -t rsa -C "自己的注释内容"
cat ~/.ssh/id_rsa.pub

4.4.2 添加公钥到gitee

参考文献:https://gitee.com/profile/sshkeys

4.4.3 验证

ssh -T git@gitee.com
# 直接敲入这段代码就行

4.4.4 拉取ruoyi代码

cd /data/gitee
git clone git@gitee.com:y_project/RuoYi.git

5 安装docker

5.1 卸载旧版本

sudo yum remove docker \docker-client \docker-client-latest \docker-common \docker-latest \docker-latest-logrotate \docker-logrotate \docker-engine

5.2 安装依赖

sudo yum install -y yum-utils device-mapper-persistent-data lvm2

5.3 添加源

sudo yum-config-manager \--add-repo \http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

5.4 安装最新的containerd和docker

sudo yum install docker-ce docker-ce-cli containerd.io -y

如果安装途中报错,可以进行手动安装新版本的containerd.io

yum install -y https://mirrors.aliyun.com/docker-ce/linux/centos/7/x86_64/edge/Packages/containerd.io-1.2.6-3.3.el7.x86_64.rpm
yum install docker-ce docker-ce-cli -y

5.5 启动docker并配置开机自启

# 启动docker
sudo systemctl start docker
# 开机自启
sudo systemctl enable docker

5.6 检测docker版本

docker -v

5.7 配置阿里云镜像加速器

sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{"registry-mirrors": ["https://plb9xzjh.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker

6 安装mysql

6.1 拉取MySQL5.7镜像

docker pull mysql:5.7

6.2 查看镜像

docker images

6.3 创建配置文件

mkdir -p /data/docker/mysql/conf
cd /data/docker/mysql/conf
vim my.cnf

my.cnf 文件内容:

[mysqld]
character-set-server=utf8[mysql]
default-character-set=utf8

6.4 启动镜像

docker run -p 3306:3306 --name mysql -v /data/docker/mysql/conf:/etc/mysql/conf.d -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7

使用docker ps查看正在运行的容器

6.5 进入mysql容器

docker exec -it mysql bash
mysql -uroot -p123456
show databases;
# 退出
exit

6.6 进入mysql容器,设置root账户密码为123456并且允许任何ip访问mysql服务器。

docker exec -it mysql bash
mysql -uroot -p123456
grant all privileges on *.* to root@"%" identified by "123456";
flush privileges;
exit
exit
# 重启mysql服务
sudo docker restart mysql

7 运行项目准备

7.1 创建数据库以及数据库表

#复制需要执行的sql文件到docker的映射目录中
#注意,因为ruoyi版本问题,每个人目录下的这个ry_20230706.sql文件可能名字不同
cp /data/gitee/RuoYi/sql/quartz.sql /data/docker/mysql/conf/
cp /data/gitee/RuoYi/sql/ry_20230706.sql /data/docker/mysql/conf/
#进入docker容器中,执行sql文件
docker exec -it mysql env LANG=C.UTF-8 bash
#连接mysql
mysql -uroot -p123456
#创建数据库ruoyi
create database if not exists ruoyi character set='utf8';
#进入数据库,执行sql文件
use ruoyi;
source /etc/mysql/conf.d/quartz.sql;
source /etc/mysql/conf.d/ry_20210210.sql;
#显示创建的表
show tables;

7.2 修改项目配置

cd /data/gitee/RuoYi/ruoyi-admin/src/main/resources/
#修改application.yml的项目启动端口号与文件上传路径
vim application.yml#修改application-druid.yml的数据源
vim application-druid.yml
# application.yml文件要修改的内容
profile: /data/tmp
port: 81  # 这个根据自己服务器的端口而定
#application-druid.yml文件要修改的内容(需要注意的是url那里也需要改,不能使用默认的)# 主库数据源
master:url: jdbc:mysql://localhost:3306/ruoyi?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8username: rootpassword: 123456

7.3 将项目打成jar包

cd /data/gitee/RuoYi/
mvn install

7.4 启动项目

mkdir -p /data/app/ruoyi-admin
cp /data/gitee/RuoYi/ruoyi-admin/target/ruoyi-admin.jar /data/app/ruoyi-admin/ruoyi-admin.jar
cd /data/app/ruoyi-admin/
#后台启动项目
nohup java -jar ruoyi-admin.jar &
#查看项目运行日志
tail -f nohup.out

7.5 访问项目

http://IP:81

如果觉得有帮助,那就给个三连吧~

你们的支持就是我最大的动力~

相关文章:

Ruoyi安装部署(linux环境、前后端不分离版本)

目录 简介 1 新建目录 2 安装jdk 2.1 jdk下载 2.2 解压并移动文件夹到/data/service目录 2.3 配置环境变量 3 安装maven 3.1 进入官网下载最新的maven 3.2 解压并移动文件夹到/data//service目录 3.3 配置环境变量 3.4 配置本地仓库地址与阿里云镜像 4 安装git 4.…...

PHP聚合支付网站源码/对接十多个支付接口 第三方/第四方支付/系统源码

PHP聚合支付网站源码/对接十多个支付接口 第三方/第四方支付/系统源码 内附数十个支付接口代码文件。 下载地址&#xff1a;https://bbs.csdn.net/topics/616764485...

容器化微服务:用Kubernetes实现弹性部署

随着云计算的迅猛发展&#xff0c;容器化和微服务架构成为了构建现代应用的重要方式。而在这个过程中&#xff0c;Kubernetes&#xff08;常简称为K8s&#xff09;作为一个开源的容器编排平台&#xff0c;正在引领着容器化微服务的部署和管理革命。本文将深入探讨容器化微服务的…...

DevOps系列文章 之 Python基础

Python语法结构 语句块缩进 1.python代码块通过缩进对齐表达代码逻辑而不是使用大括号 2.缩进表达一个语句属于哪个代码块 3.缩进风格 &#xff1a; 建议使用四个空格 如果是Linux系统的话&#xff0c;可以这样做&#xff0c;实现自动缩进 &#xff1a; vim ~/.vimrc set ai…...

Harbour.Space Scholarship Contest 2023-2024 (Div. 1 + Div. 2) A ~ D

比赛链接 A 正常枚举就行&#xff0c;从最后一位往前枚举&#xff0c;-1、-2、-3...这样 #include<bits/stdc.h> #define IOS ios::sync_with_stdio(0);cin.tie(0);cout.tie(0); #define endl \nusing namespace std;typedef pair<int, int> PII; typedef long l…...

[管理与领导-53]:IT基层管理者 - 8项核心技能 - 8 - 持续改进

前言&#xff1a; 管理者存在的价值就是制定目标&#xff0c;即目标管理、通过团队&#xff08;他人&#xff09;拿到结果。 要想通过他人拿到结果&#xff1a; &#xff08;1&#xff09;目标&#xff1a;制定符合SMART原则的符合业务需求的目标&#xff0c;团队跳一跳就可以…...

芯片验证板卡设计原理图:446-基于VU440T的多核处理器多输入芯片验证板卡

基于VU440T的多核处理器多输入芯片验证板卡 一、板卡概述 基于XCVU440-FLGA2892的多核处理器多输入芯片验证板卡为实现网络交换芯片的验证&#xff0c;包括四个FMC接口、DDR、GPIO等&#xff0c;北京太速科技芯片验证板卡用于完成甲方的芯片验证任务&#xff0c;多任务…...

几个nlp的小任务(机器翻译)

几个nlp的小任务(机器翻译) 安装依赖库数据集介绍与模型介绍加载数据集看一看数据集的样子评测测试数据预处理测试tokenizer处理目标特殊的token预处理函数对数据集的所有数据进行预处理微调预训练模型设置训练参数需要一个数据收集器,把处理好数据喂给模型设置评估方法参数…...

飞腾X100 LPDDR颗粒线序配置辅助工具

B站讲解视频: 正文内容: 一、 飞腾X100显存使用LPDDR4时,需要工程师在X100的固件中去配置线序交换说明,就类似下面这个: 图1 我们需要输入每个slice中DQ的线序,也需要输入slice之间的交换关系,这个工作量也不小,同时容易出现错误,所以开发了一款辅助小工具,…...

二、数学建模之整数规划篇

1.定义 2.例题 3.使用软件及解题 一、定义 1.整数规划&#xff08;Integer Programming&#xff0c;简称IP&#xff09;&#xff1a;是一种数学优化问题&#xff0c;它是线性规划&#xff08;Linear Programming&#xff0c;简称LP&#xff09;的一个扩展形式。在线性规划中&…...

C语言日常刷题 4

文章目录 题目答案与解析123456 题目 1、设变量已正确定义&#xff0c;以下不能统计出一行中输入字符个数&#xff08;不包含回车符&#xff09;的程序段是&#xff08; &#xff09; A: n0;while(chgetchar()!‘\n’)n; B: n0;while(getchar()!‘\n’)n; C: for(n0;getchar()…...

MyBatis plus 多数据源实现

1. 项目背景 最近写文章发布到【笑小枫】小程序和我的个人网站上&#xff0c;因为个人网站用的是halo框架搭建&#xff0c;两边数据结构不一致&#xff0c;导致我每次维护文章都需要两边维护&#xff0c;这就很烦~ 于是&#xff0c;本文就诞生了。通过项目连接这两个数据库&a…...

k-近邻算法概述,k-means与k-NN的区别对比

目录 k-近邻算法概述 k-近邻算法细节 k值的选取 分类器的决策 k-means与k-NN的区别对比 k-近邻算法概述 k近邻&#xff08;k-nearest neighbor, k-NN&#xff09;算法由 Cover 和 Hart 于1968年提出&#xff0c;是一种简单的分类方法。通俗来说&#xff0c;就是给定一个…...

node 项目搭建

1. 初始化项目 cmd 执行 cnpm init -y 创建README.md 依赖安装 1. 数据库 和 框架 mysql express cnpm install mysql express --save 2. 后端跨域 cors cnpm i cors 3. 安装 body-parser 声明引用 用于接收前端 post 过来的数据 cnpm install --save body-parser 4…...

CSS 属性值计算过程

目录 例子1&#xff0c;确定声明值2&#xff0c;层叠冲突2.1&#xff0c;比较源重要性2.2&#xff0c;比较优先级2.3&#xff0c;比较源次序 3&#xff0c;使用继承4&#xff0c;使用默认值其他 例子 我们来举例说明<h1> 标签最终的样式&#xff1a; <div><h1…...

QT版权查询

文章目录 QT工具版权QT模块版权查询 根据条件自动筛选&#xff1a; Qt Features, Framework Essentials, Modules, Tools & Add-Ons QT工具版权 Licensing QT模块版权查询 在 All Modules 中点击进入每个模块&#xff0c;在详细内容中一般有Lisence相关内容。 Licens…...

【leetcode 力扣刷题】双指针///原地扩充线性表

双指针///原地扩充线性表 剑指 Offer 05. 替换空格定义一个新字符串扩充字符串&#xff0c;原地替换思考 剑指 Offer 05. 替换空格 题目链接&#xff1a;剑指 Offer 05. 替换空格 题目内容&#xff1a; 这是一道简单题&#xff0c;理解题意&#xff0c;就是将字符串s中的空格…...

第八章,帖子列表

8.1添加帖子列表 <script> import { mapState } from vuex . . . </script> computed: {...mapState([auth,user,articles]) }, <Message :sh...

netty与websockt实现聊天

配置websockt&#xff1a; import lombok.Data; import org.springframework.boot.context.properties.ConfigurationProperties; import org.springframework.context.annotation.Configuration;/*** websocket配置*/ Data Configuration ConfigurationProperties(prefix &qu…...

21.2 CSS 三大特性与页面布局

1. 开发者工具修改样式 使用开发者工具修改样式, 操作步骤如下: * 1. 打开开发者工具: 在浏览器中右键点击页面, 然后选择检查或者使用快捷键(一般是 F12 或者 CtrlShiftI)来打开开发者工具.* 2. 打开样式编辑器: 在开发者工具中, 找到选项卡或面板, 一般是Elements或者Elemen…...

【Python】 -- 趣味代码 - 小恐龙游戏

文章目录 文章目录 00 小恐龙游戏程序设计框架代码结构和功能游戏流程总结01 小恐龙游戏程序设计02 百度网盘地址00 小恐龙游戏程序设计框架 这段代码是一个基于 Pygame 的简易跑酷游戏的完整实现,玩家控制一个角色(龙)躲避障碍物(仙人掌和乌鸦)。以下是代码的详细介绍:…...

visual studio 2022更改主题为深色

visual studio 2022更改主题为深色 点击visual studio 上方的 工具-> 选项 在选项窗口中&#xff0c;选择 环境 -> 常规 &#xff0c;将其中的颜色主题改成深色 点击确定&#xff0c;更改完成...

CMake 从 GitHub 下载第三方库并使用

有时我们希望直接使用 GitHub 上的开源库,而不想手动下载、编译和安装。 可以利用 CMake 提供的 FetchContent 模块来实现自动下载、构建和链接第三方库。 FetchContent 命令官方文档✅ 示例代码 我们将以 fmt 这个流行的格式化库为例,演示如何: 使用 FetchContent 从 GitH…...

什么?连接服务器也能可视化显示界面?:基于X11 Forwarding + CentOS + MobaXterm实战指南

文章目录 什么是X11?环境准备实战步骤1️⃣ 服务器端配置(CentOS)2️⃣ 客户端配置(MobaXterm)3️⃣ 验证X11 Forwarding4️⃣ 运行自定义GUI程序(Python示例)5️⃣ 成功效果![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/55aefaea8a9f477e86d065227851fe3d.pn…...

基于Java Swing的电子通讯录设计与实现:附系统托盘功能代码详解

JAVASQL电子通讯录带系统托盘 一、系统概述 本电子通讯录系统采用Java Swing开发桌面应用&#xff0c;结合SQLite数据库实现联系人管理功能&#xff0c;并集成系统托盘功能提升用户体验。系统支持联系人的增删改查、分组管理、搜索过滤等功能&#xff0c;同时可以最小化到系统…...

C++课设:简易日历程序(支持传统节假日 + 二十四节气 + 个人纪念日管理)

名人说:路漫漫其修远兮,吾将上下而求索。—— 屈原《离骚》 创作者:Code_流苏(CSDN)(一个喜欢古诗词和编程的Coder😊) 专栏介绍:《编程项目实战》 目录 一、为什么要开发一个日历程序?1. 深入理解时间算法2. 练习面向对象设计3. 学习数据结构应用二、核心算法深度解析…...

OD 算法题 B卷【正整数到Excel编号之间的转换】

文章目录 正整数到Excel编号之间的转换 正整数到Excel编号之间的转换 excel的列编号是这样的&#xff1a;a b c … z aa ab ac… az ba bb bc…yz za zb zc …zz aaa aab aac…; 分别代表以下的编号1 2 3 … 26 27 28 29… 52 53 54 55… 676 677 678 679 … 702 703 704 705;…...

数学建模-滑翔伞伞翼面积的设计,运动状态计算和优化 !

我们考虑滑翔伞的伞翼面积设计问题以及运动状态描述。滑翔伞的性能主要取决于伞翼面积、气动特性以及飞行员的重量。我们的目标是建立数学模型来描述滑翔伞的运动状态,并优化伞翼面积的设计。 一、问题分析 滑翔伞在飞行过程中受到重力、升力和阻力的作用。升力和阻力与伞翼面…...

渗透实战PortSwigger靶场:lab13存储型DOM XSS详解

进来是需要留言的&#xff0c;先用做简单的 html 标签测试 发现面的</h1>不见了 数据包中找到了一个loadCommentsWithVulnerableEscapeHtml.js 他是把用户输入的<>进行 html 编码&#xff0c;输入的<>当成字符串处理回显到页面中&#xff0c;看来只是把用户输…...

数据结构第5章:树和二叉树完全指南(自整理详细图文笔记)

名人说&#xff1a;莫道桑榆晚&#xff0c;为霞尚满天。——刘禹锡&#xff08;刘梦得&#xff0c;诗豪&#xff09; 原创笔记&#xff1a;Code_流苏(CSDN)&#xff08;一个喜欢古诗词和编程的Coder&#x1f60a;&#xff09; 上一篇&#xff1a;《数据结构第4章 数组和广义表》…...