nuxt服务端渲染应用部署
为了提高运行的稳定性,我们采用PM2来管理程序。
PM2是node进程管理工具,可以利用它来简化很多node应用管理的繁琐任务,如性能监控、自动重启、负载均衡等,而且使用非常简单。
下载PM2
npm install pm2 -g
上传项目
nuxt项目除了 node_modules 和 .nuxt 这两个目录外,其它的都上传到服务器。
下载nuxt项目的依赖库
npm install
安装时遇到的问题:我的项目有用到scss,npm install安装依赖库 过程中出现node-sass安装错误,需要先安装cnpm,再执行cnpm install进行下载
压缩JS和CSS资源
npm run build
使用PM2启动一个Web服务器
pm2 start npm --name "my-nuxt" -- start
这里的"my-nuxt"为自定义的进程名称,还有一个要注意的地方,如果你的项目已经在运行了,后来项目进行了修改,这个时候,npm build 执行完后是不能直接运行上面这句指令的。
你只要重启进程就行了,指令如下:
pm2 restart my-nuxt
或者你先删除进程再启动
pm2 delete '进程id'
pm2 start npm --name "my-nuxt" -- start
至于进程id多少你可以执行指令 pm2 list 进行查看
这个时候项目已经可以在服务器跑起来了。
备注:我用的是腾讯云的服务器,每次重启项目数据库都会崩掉,原因未知,可能是我的服务器配置太低了(毕竟人穷)。
重启数据库指令:
systemctl restart mysqld