若依项目部署(Linux2.0)

news2024/11/28 8:49:00

解压jdk

tar -zxvf jdk-8u151-linux-x64.tar.gz

配置Java环境变量: 

vim /etc/profile

export JAVA_HOME=/root/soft/jdk1.8.0_151
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH

设置环境变量生效:

 source /etc/profile

 查看一下jdk版本:

java -version

解压tomcat

tar -zxvf apache-tomcat-8.5.20.tar.gz 

 防火墙设置:

#开放端口
firewall-cmd --zone=public --add-port=8080/tcp --permanent
#跟新防火墙规则
firewall-cmd --reload

#防火墙列表
firewall-cmd --zone=public --list-ports
#防火墙状态
systemctl status firewalld
#启动防火墙
systemctl start firewalld

 

MySQL安装 :

1.卸载mariadb,否则安装MySql会出现冲突(先查看后删除再查看)

先查看:
rpm -qa|grep mariadb

卸载:

rpm -e --nodeps mariadb-libs-5.5.68-1.el7.x86_64

2.将MySQL安装包解压到指定目录

tar -xvf mysql-5.7.35-1.el7.x86_64.rpm-bundle.tar

3.开始安装,-ivh 其中i表示安装,v表示显示安装过程,h表示显示进度

rpm -ivh mysql-community-common-5.7.35-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-5.7.35-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-5.7.35-1.el7.x86_64.rpm
rpm -ivh mysql-community-server-5.7.35-1.el7.x86_64.rpm

 4.启动MySQL服务

systemctl start mysqld 

5.登录mysql修改密码

grep "password" /var/log/mysqld.log

6.连接 

mysql -uroot -p

 7.设置密码校验策略(0 or LOW),要不密码太LOW不让你过

set global validate_password_policy=0; 

8.设置密码校验长度,要不密码太短不让你过(多次测试发现密码最小长度为4位)

set global validate_password_length=4;  

 9.更新密码

set password = password("123456"); 

 10.数据库没有授权,允许以root身份远程登录mysql

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456'; 

11.输入后使修改生效还需要下面的语句

FLUSH PRIVILEGES;  

12.新建数据库

create database bookshop;  

13.进入到数据库里面

use bookshop;  

14.执行SQL脚本

source /root/soft/book.sql   

把war包放到tomcat里面去: 

进入到tomcat里面:

cd apache-tomcat-8.5.20/

进入到webapps里面:

cd webapps/

nginx安装: 

1.添加 nginx 官方提供的 yum 源(需要联网且时间较长)
 rpm -Uvh http://nginx.org/packages/centos/7/x86_64/RPMS/nginx-1.14.2-1.el7_4.ngx.x86_64.rpm

2.使用 yum 安装 nginx
 yum install nginx

 3.启动
 systemctl start nginx.service

4.设置防火墙端口
firewall-cmd --zone=public --add-port=80/tcp --permanent
firewall-cmd --reload 

修改hosts文件:

C:\windows\system32\drivers\etc\hosts

修改nginx配置文件:

先进入到目录里面

cd /etc/nginx

在编辑配置文件

vim default.conf

放到servers上面

upstream  tomcats{
        server    localhost:8080  weight=1;
        #server    192.168.183.152:8080  weight=1;
    } 

放到servers里面

location  ^~/api/ {
            proxy_pass http://tomcats/;
        }

把静态资源放到/usr/share/nginx/html里面

检查配置文件是否正常
nginx -t
重启nginx服务
 systemctl restart nginx   

执行下面命令防止报错

setenforce 0

 安装redis

安装与配置

解压redis

tar -zxf redis-6.2.1.tar.gz

安装gcc

yum -y install gcc

进入redis目录里面进行编译: 

make && make install

后端启动

使用vi或者vim命令修改/redis-6.2.1/redis.conf中的配置,将后台启动设置daemonize改为yes,如下:

daemonize yes

启动redis

redis-server /usr/local/redis-6.2.1/redis.conf

测试

执行 redis-cli 即可进入redis命令窗口,然后就可以执行redis命令了

[root@localhost bin]# redis-cli

127.0.0.1:6379> ping

PONG

127.0.0.1:6379> exit

系统服务配置

# 切换到指定目录
cd /usr/lib/systemd/system/

修改redis.service配置:  

vim redis.service

[Unit]
Description=Redis
After=syslog.target network.target remote-fs.target nss-lookup.target

[Service]
Type=forking
#修改redis-server和redis.conf的路径
ExecStart=/lky/redis-5.0.0/src/redis-server /lky/redis-5.0.0/redis.conf
ExecReload=/bin/kill -s HUP $MAINPID 
ExecStop=/bin/kill -s QUIT $MAINPID 
PrivateTmp=true

[Install]
WantedBy=multi-user.target

# 重载服务
systemctl daemon-reload
# 自启动服务
systemctl enable redis
# 禁用自启动服务
systemctl disable redis
# 启动服务
systemctl start redis
# 停止服务
systemctl stop redis
# 重启服务
systemctl restart redis

#跳转到redis安装目录
cd /usr/local/redis-6.2.1      
#修改redis.conf配置文件
vim redis.conf        
#注释redis.conf第69行的配置项
#bind 127.0.0.1           

设置登录密码

#requirepass foobared   #修改前
requirepass 123456      #修改后 

配置服务器防火墙

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

firewall-cmd --reload

firewall-cmd --list-ports

Nginx配置 

location / {
        root   /usr/share/nginx/html/dist;
        try_files $uri $uri/ /index.html;
        index  index.html index.htm;
    }

    location /prod-api/ {
                        proxy_set_header Host $http_host;
                        proxy_set_header X-Real-IP $remote_addr;
                        proxy_set_header REMOTE-HOST $remote_addr;
                        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                        proxy_pass http://127.0.0.1:8080/ruoyi-admin/;
    }
 

tomcat配置

修改server.xmlHost节点下添加

<Context docBase="" path="/" reloadable="true" source=""/>

 dist目录的文件夹下新建WEB-INF文件夹,并在里面添加web.xml文件

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" 
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
        http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
        version="3.1" metadata-complete="true">
     <display-name>Router for Tomcat</display-name>
     <error-page>
        <error-code>404</error-code>
        <location>/index.html</location>
    </error-page>
</web-app> 

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

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

相关文章

vscode中jupyter notebook执行bash命令,乱码解决方法

问题描述 使用vscode中使用jupyter notebook执行bash命令时,不管是中文还是英文,输出均是乱码 但是使用vscode的terminal执行同样的命令又没有问题,系统自带的cmd也没有问题。 最终解决后的效果如下: ## 问题分析 默认vscode会选择使用cmd执行shell, 但是通过vscode的设…

路由器作为网络扩展器——设置桥接、路由模式

下面提到的路由器都是家用路由器 一、有线桥接(交换模式) 1.连接示意图 (副路由器只看交换模式部分) 副路由器充当交换机的角色 二、无线桥接(与有线类似) &#xff08;副路由器的无线信号 连接 主路由器的无线信号&#xff09; 三、路由模式 1.连接示意图 (副路由器只看…

neo4j入门并使用案例说明

1、neo4j是什么 Neo4j是一个高性能的NoSQL图形数据库&#xff0c;它将结构化数据存储在网络&#xff08;在数学角度称为图&#xff09;上&#xff0c;而不是传统的表中。Neo4j是一个嵌入式的、基于磁盘的、具备完全的事务特性的Java持久化引擎。它因其高性能、轻量级、易嵌入和…

STM32项目分享:智能台灯系统

目录 一、前言 二、项目简介 1.功能详解 2.主要器件 三、原理图设计 四、PCB硬件设计 1.PCB图 2.PCB板及元器件图 五、程序设计 六、实验效果 七、资料内容 项目分享 一、前言 项目成品图片&#xff1a; 哔哩哔哩视频链接&#xff1a; https://www.bilibili.c…

大模型学习之菜鸟的进阶道路---工程迭代

我们的大模型学习开始了新篇章&#xff0c;这一章还是比较基础的调用api&#xff0c;有些朋友建议直接搞构造大模型&#xff0c;很显然这是很不科学的&#xff0c;我们先从基础学习&#xff0c;大模型本来就是很晦涩难懂的东西&#xff0c;并且知识体系十分庞大&#xff0c;所以…

Progressive Feature Fusion Framework Based on Graph Convolutional Network

以Resnet50作为主干网络&#xff0c;然后使用GCN逐层聚合多级特征&#xff0c;逐级聚合这种模型架构早已不新鲜&#xff0c;这篇文章使用GCN的方式对特征进行聚合&#xff0c;没有代码。这篇文章没有过多的介绍如何构造的节点特征和邻接矩阵&#xff0c;我觉得对于图卷积来说&a…

Swift 序列(Sequence)排序面面俱到 - 从过去到现在(三)

概述 在上一篇 Swift 序列(Sequence)排序面面俱到 - 从过去到现在(二) 博文中,我们介绍了如何构建一个自定义类型中“多属性”排序的通用实现。 而在本课中我们将再接再厉介绍 iOS 15+ 中新的排序机制,并简要剖析就地排序(In-place sorting)对运行性能有着怎样的显著影…

数据挖掘--数据预处理

数据挖掘--引论 数据挖掘--认识数据 数据挖掘--数据预处理 数据挖掘--数据仓库与联机分析处理 数据挖掘--挖掘频繁模式、关联和相关性&#xff1a;基本概念和方法 数据挖掘--分类 数据挖掘--聚类分析&#xff1a;基本概念和方法 数据清理 缺失值 如果数据集含有分类属性…

阿里云(域名解析) certbot 证书配置

1、安装 certbot ubuntu 系统&#xff1a; sudo apt install certbot 2、申请certbot 域名证书&#xff0c;如申请二级域名aa.example.com 的ssl证书&#xff0c;同时需要让 bb.aa.example.com 也可以使用此证书 1、命令&#xff1a;sudo certbot certonly -d “域名” -d “…

聪明人社交的基本顺序:千万别搞反了,越早明白越好

聪明人社交的基本顺序&#xff1a;千万别搞反了&#xff0c;越早明白越好 国学文化 德鲁克博雅管理 2024-03-27 17:00 作者&#xff1a;方小格 来源&#xff1a;国学文化&#xff08;gxwh001&#xff09; 导语 比一个好的圈子更重要的&#xff0c;是自己优质的能力。 唐诗宋…

c++编译器在什么情况下会提供类的默认构造函数等,与析构函数

我们都知道&#xff0c;在 c 里&#xff0c;编写的简单类&#xff0c;若没有自己编写构造析构函数与 copy 构造函数 与 赋值运算符函数&#xff0c;那么编译器会提供这些函数&#xff0c;并实现简单的语义&#xff0c;比如成员赋值。看 源码时&#xff0c;出现了下图类似的情形…

《C++避坑神器·二十七》VS中release打断点方法,#undef作用

1、release打断点方式 2、#undef作用 #undef指令用于”取消“已定义的#define指令 案例&#xff1a;

小主机折腾记24

好久不更新&#xff0c;最近折腾的事如下 1.10块钱自提买了个半高机箱&#xff0c;15086140&#xff0c;把之前拆机的H61m-A/M32AA/DP_MB与200w航嘉电源装了进去&#xff0c;额外买了半高pcie转接了个m2位&#xff0c;江波龙64g安装了win10专业版&#xff0c;最后卖了176块钱&a…

连山露【诗词】

连山露 雾隐黄山路&#xff0c;十步一松树。 树上惊松鼠&#xff0c;松子衔木屋。 松子青嫩芽&#xff0c;尖尖头探出。 卷挂白露珠&#xff0c;装映黄山雾。

UML实战-BUG管理系统

概述 根据 UML建模的过程来进行一个完整系统的设计–Bug 管理系统。下面是一个标注 UML 设计过程的参考。 需求分析:用例图。系统分析:分析业务规则–状态图。系统分析:分析业务流程–活动图。系统设计:设计静态结构–类图和包图。系统设计:Action类被调用关系–序列图。…

检测五个数是否一样的算法

目录 算法算法的输出与打印效果输出输入1输入2 打印打印1打印2 算法的流程图总结 算法 int main() {int arr[5] { 0 };int i 0;int ia 0;for (i 0; i < 5; i) { scanf("%d", &arr[i]); }for (i 1; i < 5; i) {if (arr[0] ! arr[i]) {ia 1;break;} }…

Linux-常用命令-常用设置

1.帮助类命令 1.man命令-获得帮助信息 man [命令或配置文件]例&#xff1a;查看ls命令的帮助信息 man ls输入 ZZ 退出帮助2.服务管理类命令 1.centos7语法 1.1 临时开关服务命令 开启服务&#xff1a; systemctl start 服务名 关闭服务&#xff1a; systemctl stop 服务…

Javaweb---HTTPS

题记 为了保护数据的隐私性我们引入了HTTPS 加密的方式都有那些呢? 1.对称加密: 加密和解密使用的密钥是同一个密钥 2.非对称加密:有两个密钥(一对),分为公钥和私钥(公钥是公开的,私钥是要藏好的) HTTPS的工作过程(旨在对body和header进行加密) 1.对称加密 上述引出的…

两张图片进行分析

两张图片进行分析&#xff0c;可以拖动左边图片进行放大、缩小查看图片差异 底图 <template><div class"box_container"><section><div class"" v-for"item in imgData.imgDataVal" :key"item.id"><img :s…

Kafka监控系统efak的安装

下载地址Kafka Eaglehttp://download.kafka-eagle.org/下载地址连接不稳定&#xff0c;可以多次尝试直到成功连接下载 1.解压安装包并重命名 tar -zxvf kafka-eagle-bin-3.0.1.tar.gz 查看到解压后包含一个安装包&#xff0c;再解压 tar -zxvf efak-web-3.0.1-bin.tar.gz 移…