Liunx前后端项目部署(小白也可安装)

文章目录

  • 一、CentOS服务器的安装
  • 二、jdk安装
  • 三、Tomcat安装
  • 四、MySQL安装、
  • 五、nginX安装
  • 六、多个项目负载均衡,部署后端项目
  • 七、前端项目部署

一、CentOS服务器的安装

选择liunx,下面选择CentOS 7
```![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/331d64c559cd4ed4a1614dff8053d387.png)

```cpp
白色为选择,选择第一个

在这里插入图片描述

其他不用动只要设置网络

在这里插入图片描述

使用ip a查看liunx的ip地址

在这里插入图片描述

二、jdk安装

第一步:将liunx项目部署文件全部放到/opt下面

在这里插入图片描述

第二步:用cd 转到/usr/local下面,在用mkdir新建一个文件夹java,用来存放解压后文件的存放位置

在这里插入图片描述

第三步:在用cd,转到/opt文件夹下面解压
命令:tar -axvf jdk-8u151-linux-x64.tar.gz -C /usr/local/java

在这里插入图片描述

第四步:我们用命令进入vim /etc/profile
如果我们没有vim的话我们用命令
yum -y install vim*进行一个下载

在这里插入图片描述

第五步:进入之后用i模式进入编辑,划到最下面加上命令:

#java environment
export JAVA_HOME=/usr/local/java/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将我们的环境变量生效
然后再用java -version查看jdk是否安装成功

在这里插入图片描述

三、Tomcat安装

第一步:我们用cd回到/opt下面用命令
tar -zxvf apache-tomcat-8.5.20.tar.gz -C /usr/local/java
将我们的tomcat解压到我们创建的java下面

在这里插入图片描述

第二步:我们到java目录下面,用cd进入到apache-tomcat-8.5.20/bin/
下面用
./startup.sh启动tomcat

在这里插入图片描述

第三步:进行一个8080防火墙的端口开放
命令:
#开放端口
firewall-cmd --zone=public --add-port=8080/tcp --permanent
#跟新防火墙规则
firewall-cmd --reload
#防火墙列表
firewall-cmd --zone=public --list-ports

在这里插入图片描述

第五步:我们输入ip这样我们就成功了
```![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/40fcd8a9aa6647c9817c374b73775b68.png)

```cpp
第六步:我们如果要是tomcat自启动的的话我们需要把
apache-tomcat-8.5.20/bin/catalina.sh 复制到/etc/init.d文件夹里面,在用mv将startup.sh改成tomcat
命令:
cp /usr/local/java/apache-tomcat-8.5.20/bin/catalina.sh /etc/init.d

在这里插入图片描述

第七步:我们用vim tomcat进入进入到里面添加
命令:
JAVA_HOME=/usr/local/java/jdk1.8.0_151
CATALINA_HOME=/usr/local/java/apache-tomcat-8.5.20
然后再这个# Better OS/400 detection: see Bugzilla 31132的命令上面放下面的这两个命令
#chkconfig: 23456 10 90
#description: tomcat service

在这里插入图片描述

第八步:用chkconfig --add tomcat这个命令把
tomcat加进服务
在用reboot重新启动

在这里插入图片描述

第九步:这样我们就可以开机自启动了

在这里插入图片描述

四、MySQL安装、

第一步:查看liunx是否存在MySQL数据库查看命令:rpm -qa|grep mariadb如果存在用该命令删除: rpm -e --nodeps mariadb-libs-5.5.68-1.el7.x86_64,删除之后再次查看

在这里插入图片描述

第二步:我们回到java目录下面,应mkdir创建一个mysql-5.7的一个文件夹用来存放mysql解压后的文件,在回到/opt下面,用命令:
tar -xvf mysql-5.7.35-1.el7.x86_64.rpm-bundle.tar -C /usr/local/java/mysql-5.7/
解压到我们刚刚参加的那个文件夹下面

在这里插入图片描述

第三步:在用cd进入到mysql-5.7里面
按照顺序解压
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个出现了上面的错误我们首先使用命令:
yum install net-tools -y进行下载然后再执行命令yum install perl -y进行下载,都下载完成之后就再次解压第4

在这里插入图片描述

第六步:我们先使用 systemctl start mysqld进行mysql的一个启动,然后再使用
systemctl enable mysqld.service这个命令进行一个mysql的自启动

在这里插入图片描述

第七步:我们使用命令:
grep "password" /var/log/mysqld.log
让他显示出来数据库的默认密码然后再用
 mysql -u root -p使用默认密码登录进去

在这里插入图片描述

第八步:在我们更改密码的时候我们要去修改mysql的密码规则命令:
set global validate_password_policy=0;
set global validate_password_length=4;
设置完成之后我们再修改密码
set password = password("123456");

在这里插入图片描述

第九步:我们要允许外部访问的要给它进行一个授权命令:
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;
然后刷新
FLUSH PRIVILEGES;
然后退出
exit

在这里插入图片描述

10步:我们退出mysql之后要被外部访问我们就需要对3306进行防火墙的开放命令:
#开放端口
firewall-cmd --zone=public --add-port=3306/tcp --permanent
#跟新防火墙规则
firewall-cmd --reload
#防火墙列表
firewall-cmd --zone=public --list-ports

在这里插入图片描述

11步:我们用连接工具测试输入ip加上自己的刚刚修改的密码

在这里插入图片描述

五、nginX安装

第一步:我们回到/opt下面用命令将nginx解压
 tar -xvf nginx-1.13.7.tar.gz  -C /usr/local/java/

在这里插入图片描述

第二步:解压完成之后我们再回到/opt下面用命令: yum -y install gcc zlib zlib-devel pcre-devel openssl openssl-devel
一键下载4个依赖

在这里插入图片描述

第三步:我们进入到nginx里面去安装我们的ssl证书命令:./configure --with-http_stub_status_module --with-http_ssl_module
安装完成之后我们再安装make命令:
 make && make install

在这里插入图片描述

第四步:当我们下载好了之后会在local文件夹下面生成一个nginx文件,我们cd进去,在进入到sbin里面去

在这里插入图片描述

第五步:我们用./nginx启动nginx,在开放80端口命令:
firewall-cmd --zone=public --add-port=80/tcp --permanent
#跟新防火墙规则
firewall-cmd --reload
#防火墙列表
firewall-cmd --zone=public --list-ports

在这里插入图片描述

第六步:输入我们的ip地址出现这样子的我们的nginx就安装好了

在这里插入图片描述

第七步:安装完成之后我们cd进入到cd /etc/rc.d/下面找到rc.local用vim编辑它

在这里插入图片描述

第八步:进去之后我们放入
/usr/local/nginx/sbin/nginx
位置是sbin下面的nginx文件,上面的是路径

在这里插入图片描述

10步:将我们的rc.local变成可执行文件

在这里插入图片描述

11步:这个我们就可以开启服务器自启动了

在这里插入图片描述

六、多个项目负载均衡,部署后端项目

第一步:我们到java目录下面用命令
 cp -r apache-tomcat-8.5.20/ apache-tomcat-8.5.20-8081/复制两个tomcat

在这里插入图片描述

第二步:我们进入这个8081的端口cd进入到/conf里面找到server.xml这个文件用vim编辑

在这里插入图片描述

第三步:把所有的端口都往前加一位

在这里插入图片描述

第四步:我们如果要是tomcat自启动的的话我们需要把
apache-tomcat-8.5.20-8081/bin/catalina.sh 复制到/etc/init.d文件夹里面,在用mv将startup.sh改成tomcat-8081
命令:
cp /usr/local/java/apache-tomcat-8.5.20-8081/bin/catalina.sh /etc/init.d
记得开放8081端口号

在这里插入图片描述

第五步:我们用vim tomcat进入进入到里面添加
命令:
JAVA_HOME=/usr/local/java/jdk1.8.0_151
CATALINA_HOME=/usr/local/java/apache-tomcat-8.5.20-8081
然后再这个# Better OS/400 detection: see Bugzilla 31132命令的上面放下面的这两个命令
#chkconfig: 23456 10 90
#description: tomcat service

在这里插入图片描述

第六步:用chkconfig --add tomcat这个命令把
tomcat加进服务
然后再使配置文件进行一个生效
在用reboot重新启动

在这里插入图片描述

第七步:这样我们就可以开机自启动了

在这里插入图片描述

第八步:我们进入到在/usr/local/nginx/conf这个目录下,在右边用记事本打开这个文件添加我们的负载均衡命令:


```![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/91b6dab0aeb342acbc94e87925c5c10b.png)

```cpp

 upstream  tomcat_list {  #服务器集群名字
	  server    127.0.0.1:8080  weight=1;   #服务器1   weight是权重的意思,权重越大,分配的概率越大。
	  server    127.0.0.1:8081  weight=1; #服务器2   weight是权重的意思,权重越大,分配的概率越大
    } 

在文件夹里面放上什么的命令

在这里插入图片描述



location / {
            root   html;
            proxy_pass   http://tomcat_list
            #index  index.html index.htm;
        }

这个也同样放进去.注意是这个proxy_pass   http://tomcat_list

在这里插入图片描述

第九步:进入/usr/local/nginx/sbin目录下
重启nginx服务
命令:
./nginx -s reload

在这里插入图片描述

10步:创建一个数据库将脚本倒进去

在这里插入图片描述

11步:将我们的war包放进webapp里面
路径:
/usr/local/java/apache-tomcat-8.5.20-8081/webapps
注意两个tomcat都要放

在这里插入图片描述

12步:将两个tomcat都关闭一下再重新开启
命令:./shutdown.sh
            ./startup.sh

在这里插入图片描述

13步:我们能拿到后台接口提供的数据我们的后端就算部署成功了
访问路径:http://192.168.88.132:8080/T216_SSH/vue/treeNodeAction.action

在这里插入图片描述

七、前端项目部署

第一步:我们到/usr/local下面创建一个mypro的文件夹用来存放前端的项目压缩包。

在这里插入图片描述

第二步:由于前端是zip文件我们要去下载的一个解压命令:
yum install -y unzip

在这里插入图片描述

第三步:然后解压文件夹命令:
unzip blog.zip

在这里插入图片描述

第四步:将解压到路径配置到在里面去把图中的地方替换掉 命令:


server {
        listen       80;            #监听80端口,可以改成其他端口
	#server_name  localhost;    #当前服务的域名
	server_name  www.zking.com; #当前服务的域名(虚拟域名也可以)
	root         /usr/local/mypro/dist;      #将要访问的网站的根目录,nginx节点会自动继承父节点的配置;这里放到/usr/local/*,放到其他路径下会有权限相关问题;必要的时候配置Nginx.conf的user为root

在这里插入图片描述

第五步:跟前面的一个把图中的这个替换成下面的命令:

 location / {
            #该句代码是为解决history路由不能跳转的问题,在vue-router官网有介绍 
		    try_files $uri $uri/  /index.html;
	  }
	      location  ^~/api/ {
		#^~/api/表示匹配前缀是api的请求,proxy_pass的结尾有/, 则会把/api/*后面的路径直接拼接到后面,即移除api
		    proxy_pass http://tomcat_list/;
	  }

在这里插入图片描述

第六步:在C:\Windows\System32\drivers\etc\hosts中增加映射关系

在这里插入图片描述

一定要像我这样子配置要不然会报错

在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

预训练概念

预训练是指在特定任务之前,在大规模数据集上对神经网络进行训练以学习通用的表示形式或特征。这些通用表示可以捕捉数据中的统计结构和语义信息,使得神经网络能够更好地理解和处理输入数据。 在大规模预训练模型中,通常会使用无监督或弱监督的…

python脚本实现全景站点矩阵转欧拉角

效果 脚本 import re import numpy as np import math import csv from settings import * # 以下是一个示例代码,可以输入3*3旋转矩阵,然后输出旋转角度:# ,输入3*3旋转矩阵# 计算x,y,z旋转角def rotation_matrix_to_euler_angles(R):

JVM(2)

JVM类加载 指的是java进程运行时,需要把.class文件从硬盘加载到内存,并进行一系列校验解析的过程. 核心: .class文件>类对象; 硬盘>内存. 类加载过程 在整个JVM的执行流程中,和程序员关系最密切的就是类加载的过程了,所以我们来看一下类加载的执行流程. 对于一个类…

【清理mysql数据库服务器二进制日志文件】

清理前后比对 清理前占用 86% : 清理后占用 29% : 排查占用磁盘较大的文件 检测磁盘空间占用 TOP 10 # 检测磁盘空间占用 TOP 10 $ sudo du -S /var/log/ | > sort -rn | # -n选项允许按数字排序。-r选项会先列出最大数字(逆序&#x…

Tomcat架构分析

Tomcat的核心组件 Tomcat将请求器和处理器分离,使用多种请求器支持不同的网络协议,而处理器只有一个。从而网络协议和容器解耦。 Tomcat的容器 Host:Tomcat提供多个域名的服务,其将每个域名都视为一个虚拟的主机,在…

git忽略某些文件(夹)更改说明

概述 在项目中,常有需要忽略的文件、文件夹提交到代码仓库中,在此做个笔录。 一、在项目根目录内新建文本文件,并重命名为.gitignore,该文件语法如下 # 以#开始的行,被视为注释. # 忽略掉所有文件名是 a.txt的文件. a.txt # 忽略所有生成的 java文件, *.java # a.j…

java演唱会网上订票购票系统springboot+vue

随着计算机技术的发展以及计算机网络的逐渐普及,互联网成为人们查找信息的重要场所,二十一世纪是信息的时代,所以信息的交换和信息流通显得特别重要。因此,开发合适的基于springboot的演唱会购票系统的设计与实现成为企业必然要走…

【MySQL】内置函数 -- 详解

一、日期函数 日期:年月日时间:时分秒 1、获得年月日 2、获得时分秒 3、获得时间戳 4、在日期的基础上加日期 5、在日期的基础上减去时间 6、计算两个日期之间相差多少天 7、获得当前时间 ⚪练习 (1)记录生日 (2&…

Qt中关于信号与槽函数的思考

信号与槽函数的思考 以pushbutton控件为例,在主界面上放置一个pushbutton控件,点击右键选择关联槽函数,关联一个click函数,如下图所示: 在该函数中,实现了一个点击pushbutton按钮后,弹出一个窗…

德人合科技 | 天锐绿盾终端安全管理系统

德人合科技提到的“天锐绿盾终端安全管理系统”是一款专业的信息安全防泄密软件。这款软件基于核心驱动层,为企业提供信息化防泄密一体化方案。 www.drhchina.com 其主要特点包括: 数据防泄密管理:天锐绿盾终端安全管理系统能够确保数据在创…

淘宝商品数据爬取商品信息采集数据分析API接口详细步骤展示(含测试链接)

01 数据采集 数据采集是数据可视化分析的第一步,也是最基础的一步,数据采集的数量和质量越高,后面分析的准确的也就越高,我们来看一下淘宝网的数据该如何爬取。点此获取淘宝API测试key&密钥 淘宝网站是一个动态加载的网站&a…

pytorch 图像的卷积操作

目录 1.卷积核基本参数说明 2.卷积相关操作说明 3.卷积操作示例 1.卷积核基本参数说明 pytorch进行图像卷积操作之前,需要把图像素格式进行分离,比如一个图像为rgb格式,把R,G,B取出来作为一个ndarray,前文讲过&#…

基于串流技术的p2p共享桌面共享方案

研究远控有一定时间了,但真正落地运用的不多,所以也不太上心,平时也只是自己diy玩玩,远程共享看看电视剧。 最近生成式ai大火,直接带动了gpu应用的相关场景,相关场景,但gpu卡又贵,对…

TP6上传图片到OSS(记录贴)

1&#xff0c;先安装&#xff0c;我使用composer安装 在项目的根目录运行composer require aliyuncs/oss-sdk-php 2,安装成功以后vendor目录下可以看到如图&#xff1a; 3&#xff0c;上传图片代码如下&#xff1a; <?php namespace app\controller;use app\BaseControll…

vm虚拟机的下载与安装(更新时间24/2/28)

首先进入vm官网点击跳转 进入products 进入Workstation Pro 点击DOWNLOAD TRIAL 点击DOWNLOAD NOW 到这里只需要等待下载完成就行了 安装就是正常软件程序的安装方法&#xff0c;除了自定义一下安装位置&#xff0c;其他的直接确定 许可证密钥 在网络上有很多随便一搜…

基于springboot+vue的可盈保险合同管理系统

博主主页&#xff1a;猫头鹰源码 博主简介&#xff1a;Java领域优质创作者、CSDN博客专家、阿里云专家博主、公司架构师、全网粉丝5万、专注Java技术领域和毕业设计项目实战&#xff0c;欢迎高校老师\讲师\同行交流合作 ​主要内容&#xff1a;毕业设计(Javaweb项目|小程序|Pyt…

2024年 前端JavaScript Web APIs 第一天 笔记

1.1 -声明变量const优先 1.2 -DOM树和DOM对象 1.3 -获取DOIM元素 1.4 -DOM修改元素内容以及年会抽奖 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8" /><meta http-equiv"X-UA-Compatible" content&quo…

vue中 input disable后无法触发点击事件

问题&#xff1a;input标签为disabled后&#xff0c;点击事项无效&#xff1b;当点击文字**“请选择”**时无法触发点击事件&#xff0c;其父标签的其余位置均可触发 解决&#xff1a;只需要在input标签中添加 style“pointer-events:none” 即可 pointer-events: none 作用是…

【Linux】协程简介

【Linux】协程简介 一、什么是协程&#xff1f;简介优点 二、为什么使用协程&#xff1f;三、协程的种类1、对称协程2、非对称协程 四、协程栈1、静态栈2、分段栈3、共享栈4、虚拟内存栈 五、协程调度1、栈式调度2、星切调度3、环切调度 六、常见协程库参考文献 一、什么是协程…

Vue+Flask电商后台管理系统

在这个项目中&#xff0c;我们将结合Vue.js前端框架和python后端框架Flask&#xff0c;打造一个功能强大、易于使用的电商后台管理系统 项目演示视频&#xff1a; VueFlask项目 目录 前端环境&#xff08;Vue.js&#xff09;&#xff1a; 后端环境&#xff08;python-Flask&…