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

Linux的环境安装以及项目部署

LInux软件安装

是在发行版是CentOS下安装
通常使用yum安装,可以在rpm上增加了自动解决依赖的功能

传输安装包方式安装JDK与tomcat

  1. 安装JDK
    ●安装包:将.gz文件通过Xftp传输到/opt目录下准备安装
    ●解压:进入/opt目录,使用命令tar -zxvf 压缩包名称 (名称可以用Tab键来自动补全)
    ●配置环境变量(才能在任何地方使用jdk里的工具如:javac)
    进入系统环境变量vim /etc/profile
    修改环境变量(具体视安装java地址修改)
    在最下面一行添加
    export JAVA_HOME=/opt/jdk1.8.0_261
    export PATH= P A T H : PATH: PATH:JAVA_HOME/bin

●使文件生效
source /etc/profile

  1. 安装tomcat
    ●安装包:将.gz文件通过Xftp传输到/opt目录下准备安装
    ●解压: tar -zxvf apa…
    ●启动tomcat: 进入bin目录,使用./startup.sh
    使用yum方式安装mysql

  2. 安装mysql
    ●添加rpm源,并且选择较新的源
    wget https://dev.mysql.com/get/mysql80-community-release-el8-1.noarch.rpm
    ●安装第一步下载的rpm包的依赖
    yum -y install mysql80-community-release-el8-1.noarch.rpm
    ●使用yum安装
    yum -y install mysql-server–nogpgcheck
    ● 查看当前是否为开机服务
    systemctl list-unit-files | grep mysql
    ●设置为开机启动
    systemctl enable mysqld.service
    ●启动mysql服务
    systemctl start mysqld.service
    ● 登录
    mysql-uroot-p’默认密码’
    ● 设置密码
    ALTER USER ‘root’@‘localhost’ IDENTIFIED WITH ‘mysql_native_password’ BY ‘root’;
    ● 刷新指令
    FLUSH PRIVILEGES;
    ●选中mysql数据库,设置其他ip可以访问
    update user set host=‘%’ where user=‘root’;

  3. redis
    ●添加rpm源,并且选择较新的源
    wget https://download.redis.io/releases/redis-6.2.4.tar.gz
    ●解压
    tar-zxvf redis-6.2.4.tar.gz
    ●预编译
    cd redis-6.0.8
    make
    ●创建文件
    mkdir -p /opt/redis
    ●安装
    make install PREFIX=/opt/redis
    ●启动服务
    进入安装文件bin目录:cd/opt/redis/bin
    ./redis-server 启动服务
    配置redis
    ●从redis 的源码目录中复制 redis.conf 到 redis 的安装目录
    进入到redis-6.2.4 中
    cp redis.conf /opt/redis/bin/
    ●修改 redis.conf 文件 vim redis.conf
    Esc进入命令模式 输入/+查找的关键字 n下一个 N上一个
    修改后台运行 daemonize no 改为 daemonize yes
    设置密码:requirepass 你的密码
    注释 绑定的id,
    #bind 127.0.0.1
    命令模式,:wq保存
    ●启动
    bin下
    ./redis-server redis.conf --启动服务器
    ps-ef | grep redis --查看运行状态
    ./redis-cli --启动客户端
    auth 密码 --输密码
    ping --测试

  4. 安装nginx
    ●需要安装gcc
    yum -y install gcc automake autoconf libtool make
    yum install gcc gcc-c++
    ●ftp 上传nginx-1.20.1.tar.gz 到 linux 指定目录
    ●解压 tar-zxvf 文件包
    ●cd 进入目录
    ● 安装依赖
    yum-y install zlib zlib-devel openssl openssl-devel pcre pcre-devel
    ●指定安装位置 +编译(在niginx目录中)
    ./configure --prefix=/opt/nginx
    make
    make install
    ●安装成功,启动nginx
    cd /opt/nginx/sbin ./nginx
    ●停止
    ./nginx-s stop
    ●查看nginx进程
    ps-ef | grep nginx
    ●启动后访问
    http://ip:80

项目部署

前端

  1. 将前端的访问地址都换成云服务器的地址
  2. 进入前端项目, 输入npm run build, 生成dist文件夹
  3. 删除原来nginx中的html
  4. 将dist内的文件拖到nginx/html中

后端

●数据库

  1. 将表结构和数据备份到后端项目文件中,最外层
  2. 数据转储到线上服务器中

●后端代码

  1. 在后端将与本地的服务器相关的改成线上服务器
  2. 修改启动类
	public static void main(String[] args) {
//		SpringApplication.run(NewsProApplication.class, args); 注释原来的启动类//改成下面三行通过linux中指令来启动程序SpringApplication application = new SpringApplication(NewsProApplication.class);application.addListeners(new ApplicationPidFileWriter("/opt/app.pid"));//存放SpringBoot进程Id,用于关闭时查看进程application.run();}
  1. 打包(jar包)
    使用maven, clean-compile-package
    在target文件夹中生成项目的jar包,放到Linux里的opt目录中
  2. 启动程序
    java -jar news.jar(项目名字) --不能后台运行
    nohup java -jar news.jar & --后台运行
    此时使用ctrl+c切换到命令行模式,这时springboot程序会在后台运行,不会中断
    注意将装在linux的服务器地址更改成后端要求的
  3. 开启防火墙
    springBoot服务器…
  4. 停止springboot服务
    cat /opt/app.pid | xargs kill

相关文章:

Linux的环境安装以及项目部署

LInux软件安装 是在发行版是CentOS下安装 通常使用yum安装,可以在rpm上增加了自动解决依赖的功能 传输安装包方式安装JDK与tomcat 安装JDK ●安装包:将.gz文件通过Xftp传输到/opt目录下准备安装 ●解压:进入/opt目录,使用命令tar -zxvf 压缩包名称 (名称…...

ASUS华硕天选2锐龙版笔记本电脑FA506ICB/FA706IC原装出厂Windows11系统,预装OEM系统恢复安装开箱状态

链接:https://pan.baidu.com/s/122iHHEOtNUu4azhVPnxNuA?pwdsqk7 提取码:sqk7 适用型号: FA506IM、FA506IE、FA506IC、FA506IHR FA506IR、FA506IHRB、FA506ICB、FA506IEB FA706IM、FA706IE、FA706IC、FA706IHR FA706IR、FA706IHRB、F…...

登录校验认证

会话技术 会话:用户打开浏览器,访问web服务器的资源,会话建立,直到有一方断开连接,会话结束。在一次会话中可以包含多次请求和响应。 会话跟踪: 一种维护浏览器状态的方法,服务器需要识别多次请…...

Kubernetes 几大概念的作用

更详细的组件通信流程 Kubernetes 主要由以下几个核心组件组成: 1. etcd 保存了整个集群的状态; 2. API Server 提供了资源操作的唯一入口,并提供认证,授权,访问控制,API 注册和发现等机制; …...

力扣199. 二叉树的右视图(DFS,BFS)

Problem: 199. 二叉树的右视图 文章目录 题目描述思路解题方法复杂度Code 题目描述 思路 无论是DFS还是BFS我们都要思考到达二叉树的每一层(或者每一层中的每一个节点)时,我们都该如何按题目要求做出对应得处理!!!在本体中我们主要是&#x…...

[数据集][目标检测]光伏板太阳能版缺陷检测数据集VOC+YOLO格式2400张3类别

数据集格式:Pascal VOC格式YOLO格式(不包含分割路径的txt文件,仅仅包含jpg图片以及对应的VOC格式xml文件和yolo格式txt文件) 图片数量(jpg文件个数):2400 标注数量(xml文件个数):2400 标注数量(txt文件个数):2400 标注…...

根据QQ号获取暗恋的人的全部歌单

文章目录 前言一、成果展示二、后端开发流程三、前后端障碍与难点解决四、待扩展内容五、总结 前言 本人喜欢使用QQ音乐听歌,并且喜欢点击好友栏目观看最近在听,了解暗恋的人最近在听什么歌曲,知己知彼,百战不殆。但是每次都需要…...

解决火狐浏览器访问地址受限制问题(This address is restricted)

问题如下图: This address is restrictedThis address uses a network port which is normally used for purposes other than Web browsing. Firefox has canceled the request for your protection. 此地址受到限制 此地址使用通常用于 Web 浏览以外的目的的网…...

基于MPPT的太阳能光伏电池simulink性能仿真,对比扰动观察法,增量电导法,恒定电压法

目录 1.课题概述 2.系统仿真结果 3.核心程序与模型 4.系统原理简介 4.1 扰动观察法 (Perturb and Observe Method) 4.2 增量电导法 (Incremental Conductance Method) 4.3 恒定电压法 (Constant Voltage Method) 5.完整工程文件 1.课题概述 在simulink中,实…...

HUAWEI 华为交换机 配置 MAC 防漂移 防MAC伪造示例

组网需求 某企业网络中,用户需要访问企业的服务器。如果某些非法用户从其他接口假冒服务器的MAC 地址发送报文,则服务器的 MAC 地址将在其他接口学习到。这样用户发往服务器的报文就会发往非法用户,不仅会导致用户与服务器不能正常通信&…...

Java 反射机制实践案例

Java反射机制允许程序在运行时查询和操作对象的类信息,甚至可以调用类的方法、访问字段和创建新的对象。下面通过几个简单的示例来展示Java反射的实践应用。 1. 获取Class对象的引用 有三种主要方式可以在运行时获得Class对象的引用: // 方法1: 通过对…...

OJ:循环队列

622. 设计循环队列 - 力扣(LeetCode) 思路 思路:首先循环队列的意思是:空间固定,就是提前开辟好,满了就不能插入了,但是删除数据后仍有空间,删除循环队列里面的数据后,保…...

专业140+总430+电子科技大学858信号与系统考研经验成电电子信息与通信工程,电科大,真题,大纲,参考书。

今年考研成绩出来,初试专业课858信号与系统140,总分430,其余各门分数都比较平稳,总分好于自己估分,应群里很多同学要求,我总结一下自己的复习经验。首先我是一个大冤种,专业课资料学长给了一套&…...

C++:STL - set map

C:STL - set & map 关联式容器pairset模板参数typedef的类型构造函数迭代器常规接口特殊接口 multisetmap模板参数typedef的类型常规接口特殊接口 multimap 关联式容器 关联式容器是C标准库提供的一种数据结构,用于存储操作键值对(key-v…...

一招鲜吃遍天之Haproxy集群

四层: LVS:Linux Virtual Server Nginx: HAProxy:High Availability Proxy 七层: HAProxy Nginx 硬件: F5 F5 | 多云安全和应用交付 Netscaler NetScaler: Application Delivery at Scale Array 北京华耀科技…...

数据库的筛选条件

【一】筛选过滤条件 【1】完整的查询语句 -- 查询当前表中的全部数据select * from 表名 where 筛选条件;​-- 查询当前表中的指定字段的数据select 字段名,字段名 from 表名 where 筛选条件;# 执行顺序from where select ​select 你选择的列1, 你选择的列2, ... from 查询的…...

MySQL学习笔记(一)数据库事务隔离级别与多版本并发控制(MVCC)

一、数据库事务隔离级别 数据库事务的隔离级别有4种,由低到高分别为Read uncommitted (读未提交)、Read committed(读提交) 、Repeatable read(可重复读) 、Serializable (串行化&a…...

如何在Linux上为PyCharm创建和配置Desktop Entry

在Linux操作系统中,.desktop 文件是一种桌面条目文件,用于在图形用户界面中添加程序快捷方式。本文将指导您如何为PyCharm IDE创建和配置一个 .desktop 文件,从而能够通过应用程序菜单或桌面图标快速启动PyCharm。 步骤 1: 确定PyCharm安装路…...

Igraph入门指南 4

二、图的创建 图分有向图和无向图,所以图的创建有各自的实现方式。 1、手工创建图: 1-1 通过文本创建:graph_from_literal 通过每项提供两个顶点名(或ID号)作为一条边的格式,手动创建图,顶点…...

外包干了30天,技术明显退步。。

🍅 视频学习:文末有免费的配套视频可观看 🍅 点击文末小卡片,免费获取软件测试全套资料,资料在手,涨薪更快 这次来聊一个大家可能也比较关心的问题,那就是就业城市选择的问题。而谈到这个问题&a…...

日语AI面试高效通关秘籍:专业解读与青柚面试智能助攻

在如今就业市场竞争日益激烈的背景下,越来越多的求职者将目光投向了日本及中日双语岗位。但是,一场日语面试往往让许多人感到步履维艰。你是否也曾因为面试官抛出的“刁钻问题”而心生畏惧?面对生疏的日语交流环境,即便提前恶补了…...

C++实现分布式网络通信框架RPC(3)--rpc调用端

目录 一、前言 二、UserServiceRpc_Stub 三、 CallMethod方法的重写 头文件 实现 四、rpc调用端的调用 实现 五、 google::protobuf::RpcController *controller 头文件 实现 六、总结 一、前言 在前边的文章中,我们已经大致实现了rpc服务端的各项功能代…...

Cursor实现用excel数据填充word模版的方法

cursor主页:https://www.cursor.com/ 任务目标:把excel格式的数据里的单元格,按照某一个固定模版填充到word中 文章目录 注意事项逐步生成程序1. 确定格式2. 调试程序 注意事项 直接给一个excel文件和最终呈现的word文件的示例,…...

逻辑回归:给不确定性划界的分类大师

想象你是一名医生。面对患者的检查报告(肿瘤大小、血液指标),你需要做出一个**决定性判断**:恶性还是良性?这种“非黑即白”的抉择,正是**逻辑回归(Logistic Regression)** 的战场&a…...

家政维修平台实战20:权限设计

目录 1 获取工人信息2 搭建工人入口3 权限判断总结 目前我们已经搭建好了基础的用户体系,主要是分成几个表,用户表我们是记录用户的基础信息,包括手机、昵称、头像。而工人和员工各有各的表。那么就有一个问题,不同的角色&#xf…...

linux arm系统烧录

1、打开瑞芯微程序 2、按住linux arm 的 recover按键 插入电源 3、当瑞芯微检测到有设备 4、松开recover按键 5、选择升级固件 6、点击固件选择本地刷机的linux arm 镜像 7、点击升级 (忘了有没有这步了 估计有) 刷机程序 和 镜像 就不提供了。要刷的时…...

数据链路层的主要功能是什么

数据链路层(OSI模型第2层)的核心功能是在相邻网络节点(如交换机、主机)间提供可靠的数据帧传输服务,主要职责包括: 🔑 核心功能详解: 帧封装与解封装 封装: 将网络层下发…...

3403. 从盒子中找出字典序最大的字符串 I

3403. 从盒子中找出字典序最大的字符串 I 题目链接:3403. 从盒子中找出字典序最大的字符串 I 代码如下: class Solution { public:string answerString(string word, int numFriends) {if (numFriends 1) {return word;}string res;for (int i 0;i &…...

使用 SymPy 进行向量和矩阵的高级操作

在科学计算和工程领域,向量和矩阵操作是解决问题的核心技能之一。Python 的 SymPy 库提供了强大的符号计算功能,能够高效地处理向量和矩阵的各种操作。本文将深入探讨如何使用 SymPy 进行向量和矩阵的创建、合并以及维度拓展等操作,并通过具体…...

HashMap中的put方法执行流程(流程图)

1 put操作整体流程 HashMap 的 put 操作是其最核心的功能之一。在 JDK 1.8 及以后版本中,其主要逻辑封装在 putVal 这个内部方法中。整个过程大致如下: 初始判断与哈希计算: 首先,putVal 方法会检查当前的 table(也就…...