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

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不通 又是什么虚拟机上不了网
推荐有线桥接模式!

相关文章:

  • Vue如何请求接口——axios请求
  • 第六章[字典]:6.4:字典推导式
  • OD Linux发行版本
  • JavaOOP篇----第十四篇
  • leetcode 131. 分割回文串
  • Uniapp + Vue3 封装请求工具挂载全局
  • windows平台配置vsCode_CMake_Clang/LLVM_ninja环境与测试
  • 堆与二叉树(下)
  • 深度学习 | 基础卷积神经网络
  • 智能优化算法应用:基于蛇优化算法3D无线传感器网络(WSN)覆盖优化 - 附代码
  • C语言沉浸式刷题【C语言必刷题】
  • rk3588 之启动
  • 初识QT(上篇):What Qt
  • 【顶级快刊】IEEE(Trans),审稿快仅2个月录用,入选CCF-B,现在投最快!
  • ZKP Mathematical Building Blocks (2)
  • 2017-08-04 前端日报
  • CentOS7简单部署NFS
  • chrome扩展demo1-小时钟
  • Dubbo 整合 Pinpoint 做分布式服务请求跟踪
  • Java小白进阶笔记(3)-初级面向对象
  • mysql中InnoDB引擎中页的概念
  • Odoo domain写法及运用
  • php面试题 汇集2
  • Protobuf3语言指南
  • Python十分钟制作属于你自己的个性logo
  • spring boot 整合mybatis 无法输出sql的问题
  • Spring声明式事务管理之一:五大属性分析
  • Vue.js 移动端适配之 vw 解决方案
  • WordPress 获取当前文章下的所有附件/获取指定ID文章的附件(图片、文件、视频)...
  • 阿里云容器服务区块链解决方案全新升级 支持Hyperledger Fabric v1.1
  • 编写符合Python风格的对象
  • 不用申请服务号就可以开发微信支付/支付宝/QQ钱包支付!附:直接可用的代码+demo...
  • 力扣(LeetCode)357
  • 面试题:给你个id,去拿到name,多叉树遍历
  • 前端
  • 前端每日实战 2018 年 7 月份项目汇总(共 29 个项目)
  • 扫描识别控件Dynamic Web TWAIN v12.2发布,改进SSL证书
  • 项目实战-Api的解决方案
  • Java总结 - String - 这篇请使劲喷我
  • ​软考-高级-信息系统项目管理师教程 第四版【第14章-项目沟通管理-思维导图】​
  • #define MODIFY_REG(REG, CLEARMASK, SETMASK)
  • %3cscript放入php,跟bWAPP学WEB安全(PHP代码)--XSS跨站脚本攻击
  • (1)Nginx简介和安装教程
  • (二十一)devops持续集成开发——使用jenkins的Docker Pipeline插件完成docker项目的pipeline流水线发布
  • (附源码)springboot高校宿舍交电费系统 毕业设计031552
  • (四)Linux Shell编程——输入输出重定向
  • (小白学Java)Java简介和基本配置
  • (一)为什么要选择C++
  • (原創) 如何動態建立二維陣列(多維陣列)? (.NET) (C#)
  • (转)Linux下编译安装log4cxx
  • .gitignore文件_Git:.gitignore
  • .MSSQLSERVER 导入导出 命令集--堪称经典,值得借鉴!
  • .net core 6 redis操作类
  • .NET Core跨平台微服务学习资源
  • .NET gRPC 和RESTful简单对比