linux项目发布

目录

jdk

Tomcat

Tomcat自启服务(远程发布)

mysql

nginx

添加Nginx官方yum源

配置防火墙


1、安装虚拟机

时间与日期:ntp1.aliyun.com

2、安装jdk&Tomcat&mysql

2.1 准备工作

1.换源

下载wget:yum -y install wget

换源:mv /etc/yum.repos.d/CentOS-Base.repo  /etc/yum.repos.d/CentOS-Base.repo.bak

切换目录:cd /etc/yum.repos.d

生成阿里源:wget -O CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

# 创建目录

mkdir /usr/local/mytools

Cd /usr/local/mytools

# 上传文件

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

#下载rz

yum -y install lrzsz

2.1 jdk

# 切换目录

cd /usr/local/mytools

# 解压文件

tar -zxvf jdk-8u151-linux-x64.tar.gz -C /usr/local

配置环境变量

编辑Vi /etc/profile文件

#java environment

export JAVA_HOME=请修改JDK解压路径

export CLASSPATH=.:${JAVA_HOME}/jre/lib/rt.jar:${JAVA_HOME}/lib/dt.jar:${JAVA_HOME}/lib/tools.jar

export PATH=$PATH:${JAVA_HOME}/bin

# 设置环境变量生效,一定要执行!!!

source /etc/profile

# 查看环境变量是否配置成功

java -version

2.2 Tomcat

# 解压Tomcat到指定目录
tar -zxvf apache-tomcat-8.5.20.tar.gz -C /usr/local

Tomcat自启服务(远程发布)

# 切换目录
cd /usr/lib/systemd/system
# 上传tomcat.service文件
rz tomcat.service
# 编辑tomcat.service文件
vim tomcat.service

# 设置自动启
systemctl enable tomcat  
# 重载服务
systemctl daemon-reload
# 启动服务
systemctl start tomcat

防火墙

# 开启端口
firewall-cmd --zone=public --add-port=8080/tcp --permanent
# 重启防火墙(不重启以上的设置是不会生效的):
firewall-cmd --reload
# 查询有哪些端口是开启的:
firewall-cmd --list-port

# 删除指定端口
firewall-cmd --zone=public --remove-port=8080/tcp --permanent

访问Tomcat

发布项目

cd /usr/local/apache-tomcat-8.5.20/webapps/

rz hello.war

systemctl restart tomcat

2.3 mysql

解压

tar -vxf mysql-5.7.30-1.el7.x86_64.rpm-bundle.tar -C  mysql5.7/

卸载mariadb 

# 先检查有没有安装mariadb 
rpm -qa|grep mariadb
# 卸载
rpm -e --nodeps mariadb-libs-5.5.56-2.el7.x86_64
# 再次查看,mariadb已删除
rpm -qa|grep mariadb

安装依赖库(libaio ,perl ,net)

yum -y install libaio perl net-tools

cd /usr/local/mysql-5.7.30
#开始安装,-ivh 其中i表示安装,v表示显示安装过程,h表示显示进度
rpm -ivh mysql-community-common-5.7.30-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-5.7.30-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-5.7.30-1.el7.x86_64.rpm
rpm -ivh mysql-community-server-5.7.30-1.el7.x86_64.rpm

安装完后重启并初始化

systemctl start mysqld

通过命令定位到最初的密码

# 查询临时密码
grep "password" /var/log/mysqld.log
# 登录mysql
mysql -u root -p
# 设置密码校验策略(0 or LOW),要不密码太LOW不让你过
mysql> set global validate_password_policy=0;
# 设置密码校验长度,要不密码太短不让你过(多次测试发现密码最小长度为4位)
mysql> set global validate_password_length=4;
# 更新密码
mysql> set password = password("1234");
# 输入后使修改生效
mysql> FLUSH PRIVILEGES;
# 退出mysql
mysql> exit

# 查看字符集
mysql> show variables like 'chara%';
# 退出mysql
mysql> exit

# 编辑my.cnf
vim /etc/my.cnf

在该配置文件的[mysqld]选项的最后添加代码:

#在mysqld最下面加入二行代码
character-set-server=utf8 
collation-server=utf8_general_ci

#client为自己添加
[client]  
default-character-set=utf8

# 登录mysql
mysql -u root -p
# 输入密码...

# 允许以root身份远程登录mysql
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '1234' WITH GRANT OPTION;
# 输入后使修改生效
mysql> FLUSH PRIVILEGES;

# 登录mysql
mysql -u root -p
# 输入密码...

# 允许以root身份远程登录mysql
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '1234' WITH GRANT OPTION;
# 输入后使修改生效
mysql> FLUSH PRIVILEGES;

MySQL访问端口3306添加到firewalld防火墙允许访问列表中。

firewall-cmd --zone=public --add-port=3306/tcp --permanent
firewall-cmd --reload
firewall-cmd --list-port
firewall-cmd --query-port=3306/tcp

3.nginx

添加Nginx官方yum源

rpm -Uvh http://nginx.org/packages/centos/7/x86_64/RPMS/nginx-1.14.2-1.el7_4.ngx.x86_64.rpm

查看nginx版本:

rpm -qa | grep nginx

配置防火墙

firewall-cmd --zone=public --add-port=80/tcp --permanent &&
firewall-cmd --reload && 
firewall-cmd --list-port

# 启动nginx服务
systemctl start nginx
# 查询nginx服务启动状态
systemctl status nginx

双节点配置

兴建vue数据库,导入数据

进入Tomcat的webapps目录。导入ssmwar包,

重启Tomcat

访问ssm项目

通知Tomcat

systemctl stop Tomcat

复制Tomcat为Tomcat2

cp -r apache-tomcat-8.5.20/ tomcat02/

修改Tomcat02的端口配置文件:Tomcat02/conf/

vi server.xml

将8005改为8006,8009改为8010,8080改为8081

加入防火墙

firewall-cmd --zone=public --add-port=8081/tcp --permanent
firewall-cmd --reload 
firewall-cmd --list-port

同时通过80,81端口访问

192.168.252.178:8080/ssm/user/userLogin?username=admin&password=1234

修改hosts文件

动静分离

# 创建目录
mkdir -p /usr/nginx/html
# 切换目录
cd /usr/nginx/html
# 上传SPA项目
rz dist.zip
# 解压
unzip dist.zip

下载unzip:yum -y install unzip

# 编辑conf.d文件
cd /etc/nginx/conf.d

vi default.conf

添加

root:静态资源地址

location / {
            #该句代码是为解决history路由不能跳转的问题,在vue-router官网有介绍 
        try_files $uri $uri/  /index.html;
    }

重启systemctl restart nginx

systemctl status nginx

userpro (zking.com)

vi /etc/nginx/conf.d

#服务器的集群
    upstream  tomcat_list {  #服务器集群名字
        server    127.0.0.1:8080  weight=1;  
        server   127.0.0.1:8080   weight=2; 
    }

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

systemctl restart nginx

systemctl status nginx

解决方案:关闭SeLinux

setsebool -P httpd_can_network_connect 1

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

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

相关文章

【Java反序列化】CommonsCollections-CC1链分析

前言 好几天没发博文了,偷偷憋了个大的——CC1链分析,手撸了一遍代码。虽然说,这个链很老了,但还是花费了我一段时间去消化吸收,那么接下来,我会简洁的介绍下整个链的利用过程,还有哪些不理解的…

初识C++(一)

目录 一、什么是C 二、关键字: 三、命名空间 : 1. C语言存在的问题: 2. namespace关键字: 3. 注意点: 4.使用命名空间分为三种: 四、输入输出: 五、缺省函数: 1. 什么是缺省…

算法练习第三十天|两道hard51. N 皇后、37. 解数独

37. 解数独 51. N 皇后 解数独 class Solution {public void solveSudoku(char[][] board) {backTrace(board);}public boolean backTrace(char[][] board){//仅收集一个结果for(int i 0;i<9;i){for(int j 0;j<9;j){if(board[i][j] ! .) continue;for (char k 1; k &…

【Linux】进程地址空间——有这篇就够了

前言 在我们学习C语言或者C时肯定都听过老师讲过地址的概念而且老师肯定还会讲栈区、堆区等区域的概念&#xff0c;那么这个地址是指的物理内存地址吗&#xff1f;这里这些区域又是如何划分的呢&#xff1f; 我们在使用C语言的malloc或者C的new函数开辟空间时&#xff0c;开辟…

栈——数据结构——day4

栈的定义 栈是限定仅在一段进行插入和删除操作的线性表。 我们把允许插入和删除的一端称为栈顶(top),另一端称为栈底(bottom),不含任何数据元素的栈称为空栈。栈又称为后进先出(Last In First Out)的线性表&#xff0c;简称LIFO结构。 栈的插入操作&#xff0c;叫作进栈&#…

从零开始一步一步掌握大语言模型---(2-什么是Token?)

了解自然语言处理或者听说过大语言模型的同学都听过&#xff0c;token。一般来说&#xff0c;它代表的是语言中不可再分的最小单元。我们人类的语言不仅有文字&#xff0c;还有语音。针对文字、语音来说&#xff0c;它们都各自有不同的划分token的方法。本节将尽可能详细的介绍…

【收藏】什么是API测试?这是我见过的最全的测试指南!

在最近的部署中&#xff0c;当我被问到“什么是API测试&#xff1f;”时&#xff0c;我正与客户一起制定API测试策略。那时我突然意识到&#xff0c;要描述API测试居然是一件如此具有挑战性的事情&#xff0c;即使你如实地描述了它&#xff0c;也往往听起来很无聊和复杂。 好吧…

CPU百分百问题如何排查

排查CPU百分百问题通常需要一步一步地识别并解决潜在的原因。以下是一些常见的排查步骤&#xff1a; 查看系统负载&#xff1a;首先&#xff0c;使用系统监控工具比如top查看系统的负载情况。确定是哪个进程导致CPU高占用&#xff1a;查找哪个进程或应用程序的CPU占用率很高。…

遥控按键处理

遥控按键&#xff1a; 编写AndroidTV应用遥控事件怎么处理_mob64ca12e9cad4的技术博客_51CTO博客

第十二届蓝桥杯省赛CC++ 研究生组

十二届省赛题 第十二届蓝桥杯省赛C&C 研究生组-卡片 第十二届蓝桥杯省赛C&C 研究生组-直线 第十二届蓝桥杯省赛C&C 研究生组-货物摆放 第十二届蓝桥杯省赛C&C 研究生组-路径 第十二届蓝桥杯省赛C&C 研究生组-时间显示 第十二届蓝桥杯省赛C&C 研究生组…

AI PPT生成工具 V1.0.0

AI PPT是一款高效快速的PPT生成工具&#xff0c;能够一键生成符合相关主题的PPT文件&#xff0c;大大提高工作效率。生成的PPT内容专业、细致、实用。 软件特点 免费无广告&#xff0c;简单易用&#xff0c;快速高效&#xff0c;提高工作效率 一键生成相关主题的标题、大纲、…

TCP | TCP协议格式 | 三次握手

1.TCP协议 为什么需要 TCP 协议 &#xff1f;TCP 工作在哪一层&#xff1f; IP网络层是不可靠的&#xff0c;TCP工作在传输层&#xff0c;保证数据传输的可靠性。 TCP全称为 “传输控制协议&#xff08;Transmission Control Protocol”&#xff09;。 TCP 是面向连接的、可靠…

YOLOV9训练自己的数据集

1.代码下载地址GitHub - WongKinYiu/yolov9: Implementation of paper - YOLOv9: Learning What You Want to Learn Using Programmable Gradient Information 2.准备自己的数据集 这里数据集我以SAR数据集为例 具体的下载链接如下所示&#xff1a; 链接&#xff1a;https:/…

生活电子产品拆解分析~汇总目录

一、锂电池电源 ①电子产品拆解分析-暖手宝 ②电子产品拆解分析-电动牙刷 ③电子产品拆解分析-充电宝台灯 ④电子产品拆解分析-太阳能自动感应灯 ⑤电子产品拆解分析-人体感应灯 ⑥电子产品拆解分析-食物电子秤 ⑦电子产品拆解分析-6600mA充电宝 ⑨电子产品拆解分析-触摸化妆镜…

备战蓝桥杯Day34 - 每日一题

题目描述 解题思路 1.输入数据n&#xff0c;并将字符串类型转换成整数类型 2.求出输入n是2的几次幂&#xff08;调用math库中的求对数的方法&#xff09;&#xff0c;在下面的循环中要用到 3.定义sum和&#xff0c;将抽取到的牌的总数加起来存储 4.count 0 # 记录 2 的第几…

nju cs上机

给定一个正整数n(3≤n≤90)&#xff0c;数出长度为n的所有可能的不同二进制串的个数&#xff0c;使得串中没有连续的1出现。 #include<bits/stdc.h> using namespace std; int n; int dp[100][100]; int main(){while(cin >> n){dp[0][0] 1;dp[0][1] 1;for(int …

算法打卡day20|二叉树篇09|Leetcode 669. 修剪二叉搜索树、108.将有序数组转换为二叉搜索树、538.把二叉搜索树转换为累加树

算法题 Leetcode 669. 修剪二叉搜索树 题目链接:669. 修剪二叉搜索树 大佬视频讲解&#xff1a;修剪二叉搜索树视频讲解 个人思路 把这道题想复杂了&#xff0c;还想着如何去重构树 解法 递归法 依旧递归三步走 1.确定递归函数的参数以及返回值 这题递归需要返回值&#…

探索人工智能基础:从概念到应用【文末送书-42】

文章目录 人工智能概念人工智能基础【文末送书-42】 人工智能概念 人工智能&#xff08;Artificial Intelligence&#xff0c;AI&#xff09;作为当今科技领域的热门话题&#xff0c;已经深刻地影响着我们的生活和工作。但是&#xff0c;要理解人工智能&#xff0c;我们首先需…

【OpenSSH】Windows系统使用OpenSSH搭建SFTP服务器

【OpenSSH】Windows系统使用OpenSSH搭建SFTP服务器 文章目录 【OpenSSH】Windows系统使用OpenSSH搭建SFTP服务器一、环境说明二、安装配置步骤1.下载完成后&#xff0c;传至服务器或者本机并解压至C:/Program Files/目录下2.打开PowerShell终端3.进入到包含ssh可执行exe文件的文…

物联网和工业物联网的区别——青创智通

工业物联网解决方案-工业IOT-青创智通 物联网&#xff08;IoT&#xff09;和工业物联网&#xff08;IIoT&#xff09;作为现代科技的重要分支&#xff0c;正在逐渐渗透到我们的日常生活和工业生产中。它们的应用范围广泛&#xff0c;涵盖了从智能家居到自动化工厂的多个领域。…