ruoyi若依前后端分离版部署centos7服务器(全)

目录

VMware虚拟机 centos7 安装环境如下
一、msql 5.7
二、nginx1.23.3
三、java8
四、redis 3.2.1
五、部署若依前端
六、部署若依后端

前言

虚拟机的桥接与nat模式 : 重点 重点!!!
无线不可以用桥接模式 ,而你用了nat模式会导致除了宿主机跟虚拟机外
同一个路由器下其他设备访问不到 !!
尤其是宿主机的nginx更改为静态ip后会有可能出现虚拟机上不了网 互相ping不通!
强烈建议桥接模式!
由于安装其他环境设计到了ip地址,咱们先把虚拟机的ip更改为静态ip
方便后续做内网穿透
首先 ipconfig 查看宿主机ip地址 地址 网关 掩码配置到虚拟机上
在这里插入图片描述
其次 vmWare虚拟机设置里面 设置为桥接模式
在这里插入图片描述

进入虚拟机配置ipi地址 命令配置
IPADDR 192.168.0前端设置与宿主机一致 最后端的地址不一致就可以了
例如本宿主机ip为 192.168.0.116 虚拟机为 192.168.0.129

vi /etc/sysconfig/network-scripts/ifcfg-ens33

把BOOTPROTO设置为"static"
IPADDR GETWAY 设置下
在这里插入图片描述

服务界面化配置
在这里插入图片描述

接下来 咱们按照由难易简的来安装。

一、msql 5.7

这里值得注意的是 mysql版本的5.7有些语法不被8.0兼容 一定要与自己开发版本兼容

在这里插入图片描述
1 、检测 MySQL
注明:安装之前检测系统是否有自带的 MySQL

rpm -qa | grep mysql # 检查是否安装过 MySQL
rpm -qa | grep mariadb # 检查是否存在 mariadb 数据库(内置的 MySQL 数据库),有则强制删除
rpm -e --nodeps mariadb-libs-5.5.68-1.el7.x86_64 # 强制删除
rpm -e --nodeps mariadb-5.5.68-1.el7.x86_64 # 强制删除

检索出来的全部删除掉
在这里插入图片描述
2、开始安装
获取mysql下载连接

wget -c https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm

在这里插入图片描述
##安装rmp源

rpm -ivh mysql57-community-release-el7-11.noarch.rpm

安装mysql服务

yum -y install mysql-server

3、mysq基础命令

启动mysql服务

systemctl status mysqld #查看systemctl start mysqld #启动systemctl stop mysqld #停止systemctl restart mysqld  #重启systemctl enable mysqld  #开机启动truesystemctl disable mysqld #开启启动false

4、mysql数据库配置
首先获得mysql数据的初始默认密码

grep 'temporary password' /var/log/mysqld.log

在这里插入图片描述
登录mysql

mysql  -uroot -p 
#那我的Enter password为 PP?sW/(Zz8H7 

登录上去之后 咱们就是要更改密码 否则mysql不会让你操作其他语句生效
默认密码为最少8位 3级验证

alter user 'root'@'localhost' identified by '1qwerasdf@';

这样咱们就可以去修改mysql密码永久策略了

show variables like '%password%';

设置密码长度4位,密码验证等级0 不验证

set global validate_password.length = 4;
set global validate_password.policy = 0;

在这里插入图片描述
设置可远程访问服务器内数据库

update mysql.user set host ='%' where user ='root';

ok 再配置防火墙端口 这就可以打开navicat 进行调试了

firewall-cmd --permanent --add-port=3306/tcp  ##允许3306mysql端口进出firewall-cmd --reload  #重启下防火墙systemctl disable firewalld. ##禁止防火墙开启启动
systemctl stop firewalld # 关闭防火墙

直接使用

在这里插入图片描述

二、安装nginx

1、安装前依赖准备
安装nginx前需要先安装好nginx的依赖,直接安装nginx会报错

yum install -y gcc
yum install -y pcre pcre-devel
yum install -y zlib zlib-devel

2、下载解压nginx安装包

wget http://nginx.org/download/nginx-1.23.3.tar.gz
tar -zxvf nginx-1.23.3.tar.gz

解压完成 直接进入

cd nginx-1.23.3
./configure  #想指定安装目录 那就加上 --prefix=/路径make #进行编译
make install

3、启动ngxin
按照自己的安装路径 进入到 sbin目录下

cd /usr/local/nginx/sbin

在这里插入图片描述

 ./nginx					    //启动nginx./nginx -s stop			 	//停止nginx./nginx -s quit 			    //完成接受到的连接请求后结束服务./nginx -s reload 			// 重新加载nginx

启动之后看到欢迎页面基本就完事了,在配置下开机启动与配置文件
在这里插入图片描述

4、启动与端口问题

firewall-cmd --zone=public --add-port=80/tcp --permanent 
##必须加上--permanent 否则重启后就失效了
systemctl  reload firewalld ##重启防火墙

5、设置成系统服务开机启动nginx
创建并编辑 nginx.service文件

vi /usr/lib/systemd/system/nginx.service

更换成自己的安装路径 复制进去
在这里插入图片描述


[Unit]
Description=nginx - high performance web server
After=network.target remote-fs.target nss-lookup.target
[Service]
Type=forking
ExecStart=/usr/local/nginx/sbin/nginx
ExecStop=/usr/local/nginx/sbin/nginx -s stop
ExecReload=/usr/local/nginx/sbin/nginx -s reload
PrivateTmp=true
[Install]
WantedBy=multi-user.target

接下来就试试这些命令


#启动nginx
systemctl start nginx
#停止nginx
systemctl stop nginx
#重启nginx
systemctl restart nginx
#查看nginx运行状态
systemctl status nginx
#开机nginx开机自启动
systemctl enable nginx
#关闭nginx开机自启动
systemctl enable nginx

ok这就告一段落,待会部署前端的时候要去修改配置文件路径

三、安装java

1、安装源
cd至文件夹下
下载、解压源文件

wget https://repo.huaweicloud.com/java/jdk/8u202-b08/jdk-8u202-linux-x64.tar.gz
tar -zxvf jdk-8u202-linux-x64.tar.gz

2、配置环境变量

vim /etc/profile

shift +G 到文末 添加以下内容 看自己的安装地址

JAVA_HOME=/usr/local/jdk1.8.0_202
JRE_HOME=/usr/local/jdk1.8.0_202/jre
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
export JAVA_HOME JRE_HOME PATH CLASSPATH

使文件刷新配置

source /etc/profile

3、验证是否生效
查看版本

java -version

没出 java version “1.8.0_202” 就看自己下自己profile文件内是否配置正确

四、安装redis

1、安装redis数据库

yum install redis
yum install epel-release #下载仓库

2、redis服务命令

systemctl start redis  # 启动redis服务
systemctl stop redis  # 停止redis服务
systemctl restart redis # 重启redis服务
systemctl status redis  # 查看redis状态
systemctl enable redis #开机自动启动

redis已经启动状态了

在这里插入图片描述

3、开放端口号
注意:80端口是必须要开放的,而6379是redis的默认端口。

firewall-cmd --zone=public --add-port=80/tcp --permanent
firewall-cmd --zone=public --add-port=6379/tcp --permanent

4、防火墙设置

systemctl stop firewalld #停止防火墙
systemctl restart firewalld #重启防火墙
sudo systemctl disable firewalld #禁用防火墙服务
sudo systemctl status firewalld #查看防火墙状态
如下图,黑色原点就是关闭的,开启状态是个绿色点,
【不要禁用防火墙】,
如果在公网禁用防火墙跟一个妙龄萝莉在人迹罕及的乡野间裸奔无异。

在这里插入图片描述

5、查看端口

netstat -lnp|grep 6379


6、设置redis 远程连接和密码

vi  redis.conf  #找到自己的redis安装位置
找到 bind 127.0.0.1 修改为虚拟的ip

在这里插入图片描述

在查找 protected-mode  设置为no,关闭redis的保护模式

在这里插入图片描述

如果修改端口号 搜索6379 

在这里插入图片描述

# requirepass foobared 默认是不需要密码 
更改为
requirepass  123456
一定要去掉#号使之生效
配置完 wq!保存 

在这里插入图片描述
7、重启

systemctl restart redis  #重启redis配置就生效了

五、部署前端

http://192.168.10.129/prod-api/getInfo
如果部署启动之后获取不到验证码
或者取消验证码的 要F12试下登录 看自己发出去的请求是不是prod-api
否则那就是打包打成成stage了 这样无法访问到的
在这里插入图片描述

# 打包正式环境 推荐
npm run build:prod
# 打包预发布环境
npm run build:stage

构建打包成功之后,会在根目录(ruoyi-ui)生成 dist 文件夹,里面就是构建打包好的文件,通常是 .js .css、index.html 等静态文件。
接下来会用到若依官网的配置文件
Nginx 全文复制黏贴 root路径记号
在这里插入图片描述

vi /usr/local/nginx/conf/nginx.conf  ##检查自己的安装路径

更改下proxy_pass属性,换成自己的虚拟机的ip与暴露的端口
在这里插入图片描述

systemctl restart nginx #重启服务,使配置生效

图片内 root 后的目录 自己在服务器创建一下 路径对上就行
mkdir /home/ruoyi/projects/ 将打包好的dist前端文件放进下面 更改为ruoyi-ui
或者
mkdir /home/ruoyi/projects/ruoyi-ui/dist
我这里是将dist更名为ruoyi-ui
在这里插入图片描述
ok 输入自己的ip+端口号这就运行起来了
在这里插入图片描述

六、部署后端

1、修改yml文件的上传文件路径
在这里插入图片描述

2、更改数据库连接信息
在这里插入图片描述
3、修改redis的host
必须与redis内的配置文件redis.conf一致
在这里插入图片描述

4、上传jar包至服务器
在这里插入图片描述

java –jar energy.jar

在这里插入图片描述
在这里插入图片描述
前端访问ip+端口 点击登录
头像为null不是报错 更改的服务器上传路径里面没图片就为这样
在这里插入图片描述

后端部署至此完成,redis 跟数据库安装没问题 更改了jar包的配置文件 就不会出问题的

总结: 虚拟机桥接与nat模式 记住有线无线!!!
不然 要么 宿主机与虚拟机互相pin不通 又是什么虚拟机上不了网
推荐有线桥接模式!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/237610.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

OpenSergo使用详解

简介 OpenSergo是一个基于微服务治理的标准和生态,覆盖了服务元信息、流量治理、服务容错、数据库/缓存治理、服务注册发现、配置治理等十几个关键领域,覆盖了完整的微服务生命周期(从开发态到测试态,到发布态,再到运…

融云数智办公获 IT168「2023 年度信创卓越贡献奖」

近期,业界知名 IT 垂直门户媒体 IT168 正式揭晓其年度大型评选“2023 年技术卓越奖”结果,融云榜上有名。关注【融云 RongCloud】,了解协同办公平台更多干货。 融云数智办公作为信创领域明星产品荣获“2023 年度信创卓越贡献奖”。 复杂多变…

flink使用sql-client-defaults.yml无效

希望在flink sql脚本启动时自动选择catalog,减少麻烦。于是乎配置sql-client-defaults.yaml: catalogs:- name: hive_catalogtype: icebergcatalog-type: hiveproperty-version: 1cache-enabled: trueuri: thrift://localhost:9083client: 5warehouse: …

MySQL数据库8.0+版本部署安装

1、安装前准备 1.1、安装文件上传 以mysql-8.0.32版本为例,将 mysql-8.0.32-linux-glibc2.12-x86_64.tar.xz 、my.cnf上传至/opt/software目录。 安装文件百度网盘下载地址: mysql-8.0.32:https://pan.baidu.com/s/1gtPYEa2aT0V2-1Q3-KKxl…

使用HTTP协议有哪些风险?HTTP与HTTPS的区别是什么

作为两种常见的网络协议,HTTP和HTTPS都是用于在浏览器和服务器之间传输数据的。然而在保障数据安全性方面,HTTPS远远优于HTTP。在网络安全愈发重要的当下,HTTP协议的不安全性使得其逐渐被淘汰弃用。那么使用HTTP协议有哪些风险呢?…

关于“Python”的核心知识点整理大全34

目录 第13 章 外星人 13.1 回顾项目 game_functions.py 13.2 创建第一个外星人 13.2.1 创建 Alien 类 alien.py 13.2.2 创建 Alien 实例 alien_invasion.py 13.2.3 让外星人出现在屏幕上 game_functions.py 13.3 创建一群外星人 13.3.1 确定一行可容纳…

使用Pycharm一键将.ui文件生成.py文件配置教程、一键打开QTDesigner教程

2df3621a-7ffd-4f18-9735-b86464b83a5b 前言 我痛恨所有将白嫖归为理所应当的猪🐖。 教程 打开pycharm之后,依次点击File->Settings->Tools->External Tools,进入如下界面: 1、配置快捷打开Qt Designer 点击号&…

探索鸿蒙:了解华为鸿蒙操作系统的基础课程

目录 学习目标: 学习内容: 学习时间: 学习产出: 介绍鸿蒙操作系统的起源和发展历程。 理解鸿蒙操作系统的核心概念和体系结构。 学习如何搭建和配置鸿蒙开发环境。 掌握基础的鸿蒙应用开发技术,包括应用的创建、…

在x64上构建智能家居(home assistant)(二)(新版Debain12)连接Postgresql数据库

新版数据库安装基本和旧版相同,大部分可以参考旧版本在x64上构建智能家居(home assistant)(二)连接Postgresql数据库_homeassist 数据库-CSDN博客 新版本的home assistant系统安装,我在原来写的手顺上直接修改了,需要的可以查看在x64上构建智能家居(home…

【小白专用】php pdo方式连接sqlserver 设置方法 更新23.12.21

windows系统的拓展相对来说比较好安装&#xff0c;直接下载对应的dll文件&#xff0c;修改php.ini配置文件即可。 添加PHP对SQL SERVER的支持 1.新建PHP 文件&#xff0c;输入内容&#xff1a; <?php echo phpinfo(); ?> 2.运行后&#xff0c;可以查看到如下数据&…

微服务之服务注册与发现

服务注册发现 服务注册就是维护一个登记簿&#xff0c;它管理系统内所有的服务地址。当新的服务启动后&#xff0c;它会向登记簿交待自己的地址信息。服务的依赖方直接向登记簿要 Service Provider 地址就行了。当下用于服务注册的工具非常多 ZooKeeper&#xff0c;Consul&…

Git 软件安装及配置指南

目录 前言1 访问 Git 官网2 选择适用于操作系统的版本3 下载并运行Git 安装程序4 安装过程的选择组件和配置5 验证安装结语 前言 在进行软件开发或协作项目时&#xff0c;使用版本控制工具至关重要。Git 是一个强大且流行的版本控制系统&#xff0c;本文将介绍 Git 的安装步骤…

vue2 之 实现pdf电子签章

一、前情提要 1. 需求 仿照e签宝&#xff0c;实现pdf电子签章 > 拿到pdf链接&#xff0c;移动章的位置&#xff0c;获取章的坐标 技术 : 使用fabric pdfjs-dist vuedraggable 2. 借鉴 一位大佬的代码仓亏 : 地址 一位大佬写的文章 &#xff1a;地址 3. 优化 在大佬的代码…

浅述无人机技术在地质灾害应急救援场景中的应用

12月18日23时&#xff0c;甘肃临夏州积石山县发生6.2级地震&#xff0c;震源深度10千米&#xff0c;灾区电力、通信受到影响。地震发生后&#xff0c;无人机技术也火速应用在灾区的应急抢险中。目前&#xff0c;根据受灾地区实际情况&#xff0c;翼龙-2H应急救灾型无人机已出动…

网络安全-API接口安全

本文为作者学习文章&#xff0c;按作者习惯写成&#xff0c;如有错误或需要追加内容请留言&#xff08;不喜勿喷&#xff09; 本文为追加文章&#xff0c;后期慢慢追加 API接口概念 API接口&#xff08;Application Programming Interface&#xff0c;应用程序编程接口&…

Python---socket之send和recv原理剖析

1. 认识TCP socket的发送和接收缓冲区 当创建一个TCP socket对象的时候会有一个发送缓冲区和一个接收缓冲区&#xff0c;这个发送和接收缓冲区指的就是内存中的一片空间。 2. send原理剖析 send是不是直接把数据发给服务端? 不是&#xff0c;要想发数据&#xff0c;必须得…

【SpringMVC】SpringMVC的请求与响应

文章目录 0. Tomcat环境的配置1. PostMan工具介绍创建WorkSpace建立新的请求 2. 请求映射路径案例结构与代码案例结构案例代码 案例存在问题解决方案方法方法升级版——配置请求路径前缀注解总结 3. Get请求与Post请求案例结构与案例代码案例结构案例代码 Get请求Post请求接收中…

3. BlazorSignalRApp 结合使用 ASP.NET Core SignalR 和 Blazor

参考&#xff1a;https://learn.microsoft.com/zh-cn/aspnet/core/blazor/tutorials/signalr-blazor?viewaspnetcore-8.0&tabsvisual-studio 1.创建新项目 BlazorSignalRApp 2.添加项目依赖项 依赖项&#xff1a;Microsoft.AspNetCore.SignalR.Client 方式1 管理解决方案…

SOLIDWORKS Flow Simulation升力仿真分析

仿真飞车起飞和飞机起飞的原理相同,当等质量的空气同时通过机翼上表面和下表面时,会在机翼上下方形成不同流速,空气通过机翼上表面时流速大&#xff0c;压强较小;通过下表面时流速较小,压强大。此时飞车会受一个向上的合力,即向上的升力,空气速度越快,升力越大,当升力大于飞车重…

力扣每日一题day36[112.路径总和]

给你二叉树的根节点 root 和一个表示目标和的整数 targetSum 。判断该树中是否存在 根节点到叶子节点 的路径&#xff0c;这条路径上所有节点值相加等于目标和 targetSum 。如果存在&#xff0c;返回 true &#xff1b;否则&#xff0c;返回 false 。 叶子节点 是指没有子节点…