服务器部署vue项目

服务器部署Vue项目

参考的链接

  1. 项目部署

Vue---阿里云服务器部署项目(过程很完整,从服务器配置开始,数据库使用mongodb)

  1. 安装mysql数据库

Linux下安装mysql-8.0.19

  1. 安装数据库过程提示gcc版本过低(两个结合起来看)

Linux升级gcc到最新版本--gcc-9.1.0

linux下更新gcc(有命令行的截图)

1.finalshell连接服务器

下载地址

2.nginx代理

  1. 安装nginx
yum install -y nginx
  1. 设置开机启动
systemctl start nginx.service
systemctl enable nginx.service
  1. 服务器配置端口

    nginx使用端口号80,添加安全组规则。

  2. 配置完成显示nginx页面

  3. 报错

  • chkconfig: command not found

    chkconfig替换为sysv-rc-conf

3.上线前优化项目

Vue项目优化上线

4.打包上传项目

  1. 打包
cnpm run build
  1. cd到存放的位置
cd /usr/share/nginx/html
  1. 将打包的项目移到位置中

5.安装node

  1. yum install git
git clone https://github.com/cnpm/nvm.git ~/.nvm && cd ~/.nvm && git checkout git describe --abbrev=0 --tags
  1. 激活NVM
echo ". ~/.nvm/nvm.sh" >> /etc/profile
source /etc/profile
  1. 安装node
nvm install v8.12.0
nvm install v10.15.0
  1. 查看已安装node
nvm ls
  1. 查看使用的node版本
node -v
  1. 切换node版本
nvm use 8.12.0

6.测试node

  1. 本地创建一个express项目
express myapp --view=ejs
  1. 进入服务器的相关目录,上传项目
cd /usr/local/src

cd myapp
npm i
npm run start
  1. 添加安全组规则,配置3000端口
  2. 测试

7.安装MySql8.0数据库

  1. 检查并移除已安装的mysql
rpm -qa | grep mysql
rpm -e --nodeps mysql-libs-5.1.73-5.el6_6.x86_64
  1. 查询和删除所有Mysql对应的文件夹
whereis mysql

find / -name mysql
rm -rf /usr/bin/mysql /usr/include/mysql /data/mysql /data/mysql/mysql 
  1. 检查mysql用户组和用户是否存在,如果没有,则创建
cat /etc/group | grep mysql
cat /etc/passwd |grep mysql
groupadd mysql
useradd -r -g mysql mysql
  1. 从官网下载是用于Linux的Mysql安装包
wget https://cdn.mysql.com/archives/mysql-8.0/mysql-8.0.19-linux-glibc2.12-x86_64.tar.xz
  1. 解压下载的mysql安装包
tar xvf mysql-8.0.19-linux-glibc2.12-x86_64.tar.xz
  1. 移动解压文件到/usr/local/下,并将文件夹名称修改为mysql
mv mysql-8.0.19-linux-glibc2.12-x86_64 /usr/local/
cd /usr/local/
mv mysql-8.0.19-linux-glibc2.12-x86_64 mysql
  1. /usr/local/mysql目录下创建data目录
mkdir /usr/local/mysql/data
  1. 更改mysql目录下所有的目录及文件夹所属的用户组和用户,以及权限
chown -R mysql:mysql /usr/local/mysql
chmod -R 755 /usr/local/mysql
  1. 编译安装并初始化mysql,此时会生成初始密码
cd /usr/local/mysql/bin
./mysqld --initialize --user=mysql --datadir=/usr/local/mysql/data --basedir=/usr/local/mysql
  1. 编辑配置文件my.cnf,添加配置如下
[root@localhost bin]#  vi /etc/my.cnf

[mysqld]
datadir=/usr/local/mysql/data
port=3306
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
symbolic-links=0
max_connections=600
innodb_file_per_table=1
log-error=/usr/local/mysql/data/error.log
  1. 测试启动mysql服务器
/usr/local/mysql/support-files/mysql.server start
  1. 添加软连接,并重启mysql服务
ln -s /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql 
ln -s /usr/local/mysql/bin/mysql /usr/bin/mysql
service mysql restart
  1. 登录mysql,修改密码(密码为步骤5生成的临时密码)
mysql -u root -p

ALTER USER USER() IDENTIFIED BY 'yourpassword';

flush privileges;
  1. 开放远程连接
use mysql;

update user set user.Host='%' where user.User='root';

flush privileges;
  1. 测试
  • navicat连接报2059错误

将mysql用户登录的加密规则修改为mysql_native_password,使用navicat远程连接mysql时报2059错误解决方法

查看mysql的进程
ps aux |grep mysql
杀死进程
kill -9 pid
重启mysql
service mysql start
  1. 设置开机自动启动
1、将服务文件拷贝到init.d下,并重命名为mysql
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
2、赋予可执行权限
chmod +x /etc/init.d/mysqld
3、添加服务
chkconfig --add mysqld
4、显示服务列表
chkconfig --list

8.上传后台的node代码

  1. 创建文件夹,并拖入自己的文件
cd /usr/local/src
mkdir myapp
  1. 初始化
npm i
npm run start
  1. 测试

9.安装node的启动命令pm2

Vue项目优化上线 有提到PM2部分指令

  1. 换源
npm config set registry https://registry.npm.taobao.org

npm config get registry 
  1. 安装pm2
npm i pm2 -g
  1. cd到后台项目目录
cd /usr/local/src/myapp
  1. 启动服务器
pm2 start ./bin/www --name=1908shop
原文地址:https://www.cnblogs.com/wattmelon/p/13647577.html