node.js+mysql+vue3的部署方案

一、背景描述

1.1项目描述

包含了一个前端项目(Vue)和一个后端项目(nodejs)加上一个mysql,项目使用轻服务,不需用到数据库;

1.2、服务器描述

这看你自己的服务器

二、服务器环境搭建

2.1安装node

1、描述

为了避免版本不兼容,可通过node -v命令查看原先使用的node版本,在linux服务器中安装相同版本的node,我的是v16.7.0;

2、进入/opt/node目录

mkdir -p /opt/node
cd /opt/node

3、从 Node.js的站点 中获取压缩档源代码,我选择的版本为v16.7.0

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

4、解压文件,并进入文件夹

tar zxf node-v16.7.0-linux-x64.tar.gz
cd node-v16.7.0

5、设置全局环境变量,为了能够在全局使用node命令

ln -s /opt/node/node-v16.7.0-linux-x64/bin/node /usr/local/bin/node
ln -s /opt/node/node-v16.7.0-linux-x64/bin/npm /usr/local/bin/npm

6、查看是否成功设置

node -v
npm -v

 7、 安装pm2

pm2用于启动程序并在需要时重启非常有用的模块,可以随时查看服务的运行状态

npm -g install pm2 

9、设置全局变量

ln -s /opt/node/node-v16.7.0-linux-x64/bin/pm2 /usr/local/bin/pm2

补充:

  • 通过pm2 list检视运行中的应用
  • 通过pm2 stop test停止应用
  • 通过pm2 delete test删除应用
  • 通过pm2 log app查看应用日志

 2.2安装mysql

1、寻找社区源安装到/opt/mysql

cd /opt/mysql
wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm  
rpm -ivh mysql-community-release-el7-5.noarch.rpm  

2、通过yum安装

yum install mysql mysql-server mysql-devel -y

3、启动mysql

systemctl start mysql.service

4、设置用户和密码
通过yum安装的是没有用户名和密码的,所以得设置

mysqladmin -u root password admin

用户名为root,密码为admin

5、设置好后就可以登录了

mysql -uroot -padmin

查看数据库

show databases;

在这里插入图片描述

自此,数据库配置完毕

2.3启动node应用

1、我们把自己的node项目通过右键传输传进/opt/自定义文件夹/里,当然数据库文件也要一同传上去以便初始化

cd /opt/www
pm2 start index.js 

后面--name可以写,重命名的意思
当出现下面表格说明成功启动了

到这里node启动就完成了

三、安装配置tomcat 

1、安装

yum上没有tomcat的源,可以到官网去下载最新的,并使用如下方式下载解压,通过mv命令移动文件夹

cd /opt/tomcat
wget http://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-7/v7.0.92/bin/apache-tomcat-7.0.92.tar.gz
tar xzf apache-tomcat-7.0.92.tar.gz
mv apache-tomcat-7.0.92 /usr/local/tomcat7

 2、启动tomcat

/usr/local/tomcat7/bin/startup.sh

在这里插入图片描述

3、验证

netstat -anp|grep 8080

 4、安全组开放端口

在这里插入图片描述

5、vue打包好的文件传送到tomcat中,如图:我在webapps中新建了个文件夹,这样将来访问路径就会多出二级路径jqqzz,当然大家都可以放到根目录不必创建二级路径 

在这里插入图片描述

6、在jqqzz项目中新建文件夹WEB-INF,再里面新建文件web.xml
编辑文件,把如下插入到文件中,处理404返回index.html页面,并且处理history模式 

<?xml version="1.0" encoding="ISO-8859-1"?>
<web-app xmlns="http://java.sun.com/xml/ns/javaee"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
                      http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
  version="3.0"
  metadata-complete="true">

  <display-name>webapp</display-name>
  <description>
     webapp
  </description>
  <error-page>  
   <error-code>404</error-code>  
   <location>/index.html</location>  
</error-page>  
</web-app>

这样访问 ip:8080/jqqzz就可以进到自己的项目啦
注意:在某些时候,一些命令操作文件的时候会没有权限导致失败,这时使用一下命令给予文件或文件夹权限,777为所有用户拥有最高权限,R表示允许其目录下的子目录的文件及文件夹

chmod 777 文件夹或文件名
chmod 777 *.文件类型

这样所有工作就都大功告成了

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值