【Linux】rouyiVue 项目部署全过程(含MySQL,Nginx等中间件部署)

查看nginx 进程命令
ps aux | grep server_name

1. 安装MySQL

1.1 下载压缩包

官网下载
在这里插入图片描述

1.2 解压

上传并解压好放在指定位置
创建soft文件夹

mkdir /soft

上传文件,在该目录下再创建一个mysql文件夹,将安装包解压到新文件夹中

mkdir /soft/mysql-8.3.0
tar -xvf mysql-8.3.0-1.el9.x86_64.rpm-bundle.tar -C mysql-8.3.0

1.3 安装

解压完成后,进入mysql-8.3.0文件夹

cd /soft/mysql-8.3.0

在这里插入图片描述
安装 rpm 包之前需要下载插件,mysql 里面 rpm 的安装依赖于该插件。

yum install openssl-devel # 阿里云不能升级,会出现无法远程登录
yum -y install libaio perl net-tools

安装完插件后,依次执行命令安装 rpm 包

rpm -ivh ****.rpm //每个都要执行,个别报错先无视
  • 启动 MySQL 服务:systemctl start mysqld
  • 重启 MySQL 服务:systemctl restart mysqld
  • 关闭 MySQL 服务:systemctl stop mysqld
    安装 MySQL 会自动生成一个随机密码,可在 /var/log/mysqld.log 这个文件中查找该密码
cat /var/log/mysqld.log

在这里插入图片描述

1.4 连接 MySQL

mysql -u root -p

输入密码后修改密码

 ALTER  USER  'root'@'localhost'  IDENTIFIED BY '@********';

1.5 设置可远程连接

修改root或者要可以远程连接的账号权限

use mysql
update user set host = '%' where user = 'root';

刷新权限

flush privileges; 

查询确认权限

select host,user from user;

完成退出sql

exit

2. 安装Nginx

2.1 安装必须的插件,之前安装过可跳过或者更新

一次性安装

yum -y install gcc pcre pcre-devel zlib zlib-devel openssl openssl-devel

分次安装

#gcc 可以编译 C,C++,Ada,Object C和Java等语言,编译依赖 gcc 环境
yum install gcc-c++ 
#pcre pcre-devel pcre是一个perl库,包括perl兼容的正则表达式库,nginx的http模块使用pcre来解析正则表达式
yum install -y pcre pcre-devel 
#zlib zlib-devel zlib库提供了很多种压缩和解压缩方式nginx使用zlib对http包的内容进行gzip
yum install -y zlib zlib-devel
#ssl支持
yum install -y openssl
#openssl openssl-devel OpenSSL 是一个强大的安全套接字层密码库,密码算法、常用的密钥和证书封装管理功能及 SSL 协议,并提供丰富的应用程序供测试或其它目的使用
yum install -y openssl-devel

2.2 推荐直接安装,不通过安装包,有特殊需求可以用.tar.gz安装包

确保系统已经安装了wget,如果没有安装:

yum install wget

下载nginx安装包,可以进官网选择不同的版本官网下载

wgte https://nginx.org/download/nginx-1.27.0.tar.gz

解压

tar xvf nginx-1.27.0.tar.gz
cd nginx-1.27.0

配置(需要https模块再配置,如不需要则跳过)

./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module

不需要https则运行下列代码

./configure 

编译和安装

make
make install

查看安装路径

whereis nginx

编辑服务文件

vim /lib/systemd/system/nginx.service
[Unit]
Description=nginx service
After=network.target[Service]
Type=forking
ExecStart=/usr/local/nginx/sbin/nginx
ExecReload=/usr/local/nginx/sbin/nginx -s reload
ExecStop=/usr/local/nginx/sbin/nginx -s stop
PrivateTmp=true[Install]
WantedBy=multi-user.target

说明:
Description:描述服务
After:描述服务类别
[Service]服务运行参数的设置
Type=forking是后台运行的形式
ExecStart为服务的具体运行命令
ExecReload为重启命令
ExecStop为停止命令
PrivateTmp=True表示给服务分配独立的临时空间
注意:[Service]的启动、重启、停止命令全部要求使用绝对路径
[Install]运行级别下服务安装的相关设置,可设置为多用户,即系统运行级别为3
加入开机自启动

systemctl enable nginx.service

2.3 Nginx基本操作

#启动服务
systemctl start nginx.service  
#停止服务
systemctl stop nginx.service        #重新启动服务
systemctl restart nginx.service      
#查看所有已启动的服务
systemctl list-units --type=service    
#查看服务当前状态
systemctl status nginx.service         #设置开机自启动
systemctl enable nginx.service     # 停止开机自启动
systemctl disable nginx.service     

2.4 nginx.conf https 配置

    server {listen       443 ssl;server_name  localhost;#根证书地址(默认把证书放在conf目录)ssl_certificate      cert.pem;#证书秘钥(默认把证书放在conf目录)ssl_certificate_key  cert.key;ssl_session_cache    shared:SSL:1m;ssl_session_timeout  5m;ssl_ciphers  HIGH:!aNULL:!MD5;ssl_prefer_server_ciphers  on;location / {root   html;index  index.html index.htm;}}

2.5 将 http 重定向 https

server {listen 80;server_name localhost;#将请求转成httpsrewrite ^(.*) https://$server_name$1 permanent;
}

3. 安装nodejs

3.1 下载

第一种为官网下载,官网
第二种为wget下载(本文使用的方法)
创建nodejs文件夹

mkdir /soft/nodejs

下载

wget https://nodejs.org/dist/v16.18.0/node-v16.18.0-linux-x64.tar.gz

解压

tar zxvf node-v16.18.0-linux-x64.tar.gz

复制到对应文件夹

mv /soft/nodejs/node-v16.18.0-linux-x64/* /soft/nodejs/

3.2 建立软链接

ln -s /soft/nodejs/bin/node /usr/local/bin
ln -s /soft/nodejs/bin/npm /usr/local/bin

3.3 测试

node -v & npm -v

3.4 安装nrm

nrm(npm registry manager) 是 npm 的镜像源管理工具. 有时候国外资源太慢,使用 nrm 可以快速的在 npm 源之间切换。

npm install -g nrm

配置成全局

ln -s /soft/nodejs/bin/nrm /usr/local/bin

查看镜像源

nrm ls

测试镜像速度

nrm test

切换镜像

nrm use taobao

3.4 全局安装webpack/webpack-cli

# 全局安装webpack
npm install -g webpack 
# 全局安装webpack-cli
npm install webpack-cli -g 

配置成全局

ln -s /soft/nodejs/bin/webpack  /usr/local/bin
ln -s /soft/nodejs/bin/webpack-cli /usr/local/bin

两个同时安装,才能检查到安装的版本

webpack -v

3.5 全局安装vue-cli

查看可安装的版本

npm view vue-cli versions –json

当前项目例子用2.6.*版本指定所以选2.6.0,命令如下:

npm install -g vue-cli@2.6.0

安装默认最新版本

npm install -g vue-cli

4. 安装NVM(个别云服务上失败,未找到原因)

一台服务器或者需要再多个nodejs切换时,可以安装nvm进行nodejs版本管理

4.1 上传nvm安装包,这边使用的是0.38.0

nvm github地址
nvm github版本地址

4.2 下载

git clone https://github.com/nvm-sh/nvm.git .nvm

4.3 配置环境

打开~/.bashrc

vi ~/.bashrc

在~/.bashrc的末尾,添加如下语句:

export NVM_DIR=" /soft/nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"
# This loads nvm
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion"  
# This loads nvm bash_completion
# nodejs下载更换淘宝镜像
export NVM_NODEJS_ORG_MIRROR=https://npm.taobao.org/mirrors/node

刷新配置

source ~/.bashrc

5. 安装Java

5.1 确认是否安装了Java

rpm -qa | grep java

5.2 上传解压Java

tar -zxvf jdk-8u411-linux-i586.tar.gz 
mkdir java	
mv /soft/jdk1.8.0_411/ /soft/java/

5.3 配置Java的环境变量

vi /etc/profile

在profile中添加如下配置:

export M2_HOME=/soft/apache-maven-3.9.6
export PATH=${PATH}:$JAVA_HOME/bin:$M2_HOME/bin

刷新权限

source /etc/profile

查看版本

mvn -v

6. 安装maven

6.1 下载

官网下载

6.2 解压

tar -zxvf apache-maven-3.9.6-bin.tar.gz

6.3 配置maven的环境变量

vi /etc/profile

在profile中添加如下配置:

export M2_HOME=/soft/apache-maven-3.9.6
export PATH=${PATH}:$JAVA_HOME/bin:$M2_HOME/bin

刷新权限

source /etc/profile

查看版本

mvn -v

7. 安装Redis

7.1 下载Redis

Redis官网
历史版本

7.2 上传及解压缩

tar -zxvf redis-7.2.5.tar.gz

7.3 编译安装

确保已经安装gcc-c++

yum install gcc-c++

进入文件夹编译

/soft/redis-7.2.5
make

make install确认所有都安装完成

make install

7.4 redis配置修改

默认安装路径:/usr/local/bin
进入Redis文件夹,修改redis.conf配置

# 允许访问的地址,默认是127.0.0.1,会导致只能在本地访问。修改为0.0.0.0则可以在任意IP访问,生产环境不要设置为0.0.0.0
bind 0.0.0.0
# 守护进程,修改为yes后即可后台运行
daemonize yes 
# 密码,设置后访问Redis必须输入密码
requirepass 123321
# 监听的端口
port 6379
# 工作目录,默认是当前目录,也就是运行redis-server时的命令,日志、持久化等文件会保存在这个目录
dir .
# 数据库数量,设置为1,代表只使用1个库,默认有16个库,编号0~15
databases 1
# 设置redis能够使用的最大内存
maxmemory 512mb
# 日志文件,默认为空,不记录日志,可以指定日志文件名
logfile "redis.log"

7.5 启动redis

redis-server /soft/redis-7.2.5/redis.conf

设置开机自启

vi /etc/systemd/system/redis.service
[Unit]
Description=redis-server
After=network.target[Service]
Type=forking
ExecStart=/usr/local/bin/redis-server /soft/redis-7.2.5/redis.conf
PrivateTmp=true[Install]
WantedBy=multi-user.target

重载系统服务

systemctl daemon-reload

设置开机自启

systemctl enable redis

7.6 redis的基本操作

# 启动
systemctl start redis
# 停止
systemctl stop redis
# 重启
systemctl restart redis
# 查看状态
systemctl status redis

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

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

相关文章

【odoo】常用的字符转义:“>“,“<“,““,“/“等

概要 字符转义是指在编写代码或处理文本数据时&#xff0c;将特殊字符转换为另一种形式&#xff0c;以便在特定的上下文中正确解析和处理这些字符。 内容 特殊字符描述XML转义表示法&和符号&amp;<小于符号<>大于符号>"双引号&quot;单引号&ap…

【前端】前端项目埋点:数据驱动决策的基础

前端项目埋点&#xff1a;数据驱动决策的基础 在现代Web开发中&#xff0c;数据分析和用户行为追踪是提升产品体验和优化业务决策的关键手段。埋点&#xff08;Event Tracking&#xff09;是实现这一目标的重要技术。本文将介绍前端项目中埋点的基本概念、常见方法以及实现技巧…

Qdrant 的基础教程

目录 安装Qdrant安装Qdrant客户端初始化Qdrant客户端创建集合&#xff08;Collection&#xff09;插入向量数据创建索引搜索向量清理资源 Qdrant是一个开源的向量数据库&#xff0c;它专注于高维向量的快速相似性搜索。以下是一个基础的Qdrant教程&#xff0c;帮助你开始使用Qd…

汽车IVI中控开发入门及进阶(三十二):i.MX linux开发之Yocto

前言: 对于NXP的i.mx,如果基于linux开发,需要熟悉以下文档: IMX_YOCTO_PROJECT_USERS_GUIDE.pdf IMX_LINUX_USERS_GUIDE.pdf IMX_GRAPHICS_USERS_GUIDE.pdf 如果基于android开发,需要熟悉一下文档: Android_Auto_Quick_Start_Guide.pdf ANDROID_USERS_GUIDE.pdf …

CentOS7 部署安装ClickHouse

一、什么是ClickHouse ClickHouse 是俄罗斯的Yandex于2016年开源的列式存储数据库&#xff08;DBMS&#xff09;&#xff0c;使用C语言编写&#xff0c;主要用于在线分析处理查询&#xff08;OLAP&#xff09;&#xff0c;能够使用SQL查询实时生成分析数据报告。 OLAP场景需要…

Laravel - excel 导入数据

在Laravel中&#xff0c;可以使用maatwebsite/excel这个库来处理Excel文件的导入。 1.用命令行窗口打开项目根目录&#xff0c;使用 Composer 安装 maatwebsite/excel composer require maatwebsite/excel --ignore-platform-reqs 在你的config/app.php文件中注册服务提供者&…

Java八股文系列之六(Spring)

前沿 spring是java开发日常使用最多的框架&#xff0c;理解并应用好spring是基础核心能力。第一版略显粗糙&#xff0c;持续更新中。 1.什么是Spring循环依赖。 Spring循环依赖指的是两个或多个Bean之间相互依赖&#xff0c;形成一个环状依赖的情况。简单来说&#xff0c;就…

何在 Vue3 中使用 Cytoscape 创建交互式网络图

本文由ScriptEcho平台提供技术支持 项目地址&#xff1a;传送门 Vue.js 中加载 Cytoscape.js 的技术实现 应用场景 Cytoscape.js 是一个用于创建交互式网络的可视化库。在生物信息学、社会网络分析和药物发现等领域中得到了广泛应用。 基本功能 本代码片段演示了如何在 V…

二叉树的这五种遍历方法你们都会了吗?

说在前面 &#x1f388;二叉树大家应该都很熟了吧&#xff0c;那二叉树的这五种遍历方式你们都会了吗&#xff1f; 以这一二叉树为例子&#xff0c;我们来看看不同遍历方式返回的结果都是怎样的。 前序遍历 前序遍历的顺序是&#xff1a;首先访问根节点&#xff0c;然后递归地…

linux驱动资源没有及时释放排查

linux驱动资源没有及时释放排查 之前项目过程有遇到一个问题&#xff0c;明明应用已经close fd了&#xff0c;但是再次open设备的时候会出现“device is busy”的情况。刚开始出现这个问题的时候&#xff0c;还以为是应用没有及时的close fd导致的异常&#xff0c;同时排查了内…

Java的JDBC与Druid数据连接池笔记

第一章 JDBC 1.1 JDBC简介 1.1.1 JDBC概念 JDBC就是使用Java语言操作关系型数据库的一套API 全称(Java DataBase Connectivity)Java数据库连接 1.1.2 JDBC本质 官方(sun公司)定义的一套操作所有关系型数据库的规则,即接口 各个数据库厂商去实现这套接口,提供数据库…

使用 jQuery 选择器获取页面元素,然后利用 jQuery 对象的 css() 方法设置其 display 样式属性,从而实现显示和隐藏效果。

在页面中显示电影排行榜 当单击“&#xff08;收起&#xff09;”链接时&#xff0c;排行榜中后三项的电影名称隐藏而且链接的文本更改为“&#xff08;展开&#xff09; ” 当单击“&#xff08;展开&#xff09;”的链接时&#xff0c;后三项的电影名称重新显示且链接的文本…

视频剪辑技巧大揭秘:轻松掌握为视频添加梦幻光晕效果的绝妙方法!

在这个视觉盛宴的时代&#xff0c;每一个画面都渴望被赋予独特的魅力与魔法。今天&#xff0c;我要为你揭秘一个神秘的视频剪辑技巧——给视频添加光晕效果&#xff0c;让你的作品瞬间脱颖而出&#xff0c;成为朋友圈的焦点 首先&#xff0c;你可以打开原视频进行查看。此时&am…

QT自定义标题栏窗口其一:实现拖动及可拉伸效果

1、效果 2、核心代码 #include "widget.h" #include "ui_widget.h"Widget::Widget(QWidget *parent): QWidget(paren

【字节序】

1. 字节序&#xff08;Endianness&#xff09;问题 不同计算机体系结构可能采用不同的字节序来存储多字节数据。字节序有两种主要形式&#xff1a; 大端序&#xff08;Big-endian&#xff09;&#xff1a;高位字节存储在低地址。 小端序&#xff08;Little-endian&#xff09…

高速公路声光预警定向广播助力安全出行

近年来&#xff0c;高速重大交通事故屡见不鲜&#xff0c;安全管控一直是高速运营的重中之重。如何利用现代化技术和信息化手段&#xff0c;创新、智能、高效的压降交通事故的发生概率&#xff0c;优化交通安全管控质量&#xff0c;是近年来交管部门的主要工作&#xff0c;也是…

unity UGUI画线(Image方式)

/// <summary>/// 画线/// 注意&#xff1a;startPoint和endPoint&#xff0c;须和lineTransform在同一路径层级下的位置关系&#xff01;&#xff01;&#xff01;/// </summary>/// <param name"self"></param>/// <param name"li…

Asp.net core Authoriation Middleware实现权限控制的例子

ASP.NET Core Authorization Middleware 是 ASP.NET Core 框架中用于处理授权的中间件组件。它允许开发者在应用程序中实现细粒度的访问控制&#xff0c;确保只有合适的用户才能访问特定的资源或执行特定的操作。 核心概念 策略&#xff08;Policies&#xff09;&#xff1a;策…

解决不能拉取 docker 镜像

# 编辑镜像仓库文件 sudo vi /etc/docker/daemon.json { "registry-mirrors": ["https://registry.docker-cn.com","https://s3d6l2fh.mirror.aliyuncs.com"] }# 重启docker sudo systemctl restart docker参考 https://blog.csdn.net/u01019733…

timescaledb:单机基于postgresql-15安装timescaledb

配置yum sudo yum install https://download.postgresql.org/pub/repos/yum/reporpms/F-$(rpm -E %{fedora})-x86_64/pgdg-fedora-repo-latest.noarch.rpm配置yum源 sudo tee /etc/yum.repos.d/timescale_timescaledb.repo <<EOL [timescale_timescaledb] nametimescal…