概述
先熟悉下基础的命令及含义
/usr/local 是linux环境的根路径(root)
建立软连接 sudo ln -s 源文件 目标文件
举例:
当前目录是/usr/local,而我经常要访问/usr/local/linux/work
那么我就可以使用在local下建立一个文件linkwork,
然后使用 sudo ln -s /usr/local/linux/work /usr/local/linkwork
即建立两者之间的链接。
删除链接 rm -rf /usr/local/linkwork
1、服务器安装环境
a/ 安装node (没有使用过这个方法或安装失败)
1、下载node
i:在node官网下载Linux 64的node文件,通过ftp上传至/usr/local/node文件夹下
文件名:node-v12.13.0-linux-x64.tar.xz
或者:
ii:wget https://nodejs.org/dist/v12.13.0/node-vv12.13.0-linux-x64.tar.xz
2、下载之后,由于是tar.xz格式的压缩文件,所以需要用下面的命令解压:
打开xshell,连接上服务器,进入/usr/local/node文件夹下
xz -d node-v12.13.0-linux-x64.tar.xz
tar -xv -f node-v12.13.0-linux-x64.tar
//或者
tar -Jxv -f node-v12.13.0-linux-x64.tar
3、添加环境变量
vim /etc/profile
【vim命令】
i 进行编辑
esc + :wq! 保存并退出
esc + :q! 不保存并退出
在最下面添加
#node的解压目录
NODE_HOME=/usr/local/node/node-v12.13.0-linux-x64
PATH=$PATH:$NODE_HOME/bin
NODE_PATH=$NODE_HOME/lib/node_modules
export PATH NODE_HOME NODE_PATH
刷新环境变量:
source /etc/profile
查看环境变量:
echo $PATH
设置软连接,使得node在任何地方都能使用:(ps:最好是返回根目录: cd /)
ln -s /usr/local/node/node-v12.13.0-linux-x64/bin/node /usr/local/bin/node
ln -s /usr/local/node/node-v12.13.0-linux-x64/bin/npm /usr/local/bin/npm
4、测试是否安装成功:(出现版本号就是成功)
node -v
npm -v
a/ 安装node (我使用的方法)
yum install nodejs
测试是否安装成功:(出现版本号就是成功)
若: node -v //出现版本号
npm -v //没有出现
则: yum install npm
建立软连接
which node // 显示路径 /usr/local/xxx/xx/node
which npm // 显示路径 /usr/local/xxx/xx/npm
ln -s /usr/local/xxx/xx/node /usr/local/bin/node
ln -s /usr/local/xxx/xx/npm /usr/local/bin/npm
b/ 安装pm2
PM2是node进程管理工具,可以利用它来简化很多node应用管理的繁琐任务,如性能监控、自动重启、负载均衡等,而且使用非常简单。
1、安装pm2
npm install pm2 -g
2、建立软连接
同理
which pm2 // xxx/xx
ln -s xxx/xx /usr/local/bin/pm2
3、检测是否安装成功
pm2 -v
或者
pm2 list
2、本地打包应用: npm run build
将对应文件(可是是除 node_modules和.git之外的文件都压缩)压缩成 nuxt_project.zip
3、打包完成后,需上传文件夹/文件上传至服务器对应文件中
主要文件 .nuxt static nuxt.config.js package.json等
使用rz命令上传至服务器上 rz nuxt_project.zip
(输入rz回车弹出选择框选择上传的文件即可上传,若服务器该有文件,需先输入 rm nuxt_project.zip 回车 //删除文件)
如果没有rz,可以使用 yum install lrzsz 下载
输入 unzip nuxt_project.zip 解压文件并全覆盖
4、pm2开启进程守护
进入项目文件:cd nuxt_project
npm install // 没有安装插件或更改package.json(即node_modules没有改变) 可以不用安装
npm run start //检测是否报错,不能通过ip:3004正常访问
pm2 start npm --name "进程名称" -- run start //例如:进程名称==demo pm2 start npm --name "demo"
pm2 list //查看进程是否正常开启
pm2 restart 进程名称/id //重启守护进程 pm2 restart demo
5、通过域名访问,检测是否部署成功
提示 command not found的解决办法
这个提示是找不到命令
例如 npm
pm2
但是我们在服务器上使用 npm -v
pm2 -v
是可以查看到版本好的, 也就是安装好的
这个时候提示 command not found
是因为在自动部署的时候 使用的全局下的npm
pm2
命令,在全局环境下 找不到这两个命令, 自然就报错了
为了验证, 可以执行 sudo npm -v
sudo pm2 -v
也会提示 command not found
为了解决这个问题需要让npm
pm2
建立软连接,相当于放在环境变量中
首先查看 npm 的安装位置
可以使用 whereis npm 查看npm 的安装路径, 如果 whereis npm 显示路径为空,
则使用 which npm 比如 这里显示的路径是 /usr/local/src/node-v16.8.3-linux-x64/bin/npm
然后执行
sudo ln -s /usr/local/src/node-v16.8.3-linux-x64/bin/npm /usr/bin/npm
这就相当于把npm 链接到了 全局环境变量中
这时候在执行 sudo npm -v 就不报错了
同理,其他命令 只要是提示 command not found 的 都可以按照上面的方式解决
比如pm2 建立软连接:
sudo ln -s /usr/local/src/node-v16.8.3-linux-x64/bin/pm2 /usr/bin/pm2
最后
以上就是陶醉山水为你收集整理的使用Xshell部署nuxt项目的全部内容,希望文章能够帮你解决使用Xshell部署nuxt项目所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复