pm2 部署 nuxt3.js 项目

2,085 阅读3分钟

前言


众所周知,nuxt3.js是基于vue开发ssr,seo的项目比较好的框架,那么开发完成项目,如何部署nuxt项目也是比较重要的,接下来就记录一下我在开发中是如何部署的。

我之前写过一篇vue 和 ssr+nuxt.js 配置环境变量以及pm2进行服务部署,这两篇博客一定要结合起来看。。。

这篇文章只是对配置环境变量做了详细介绍,但是如何部署一带而过,是因为那个时候没怎么研究pm2,正好现在得空,研究成功并上线,本篇文章就详细介绍如何部署。

第一步:打包项目部署到服务器

npm run build:prod

将打包后的文件提交到服务器就好了 我们公司内都是采用jekins将项目自动化打包部署,代码提交后自动执行命令,就可以了。

第二步:服务器上安装pm2

切记一定要全局安装,这样的话服务器上任意开一个命令窗口都可以使用,我就是一开始没有全局安装,导致使用pm2时找不到命令

npm install pm2 -g 

第三步:启动服务

pm2 start ecosystem.config.js
//然后使用下边的命令看一下启动的服务列表
pm2 list  

如果服务是online说明启动成功,这时候再浏览器看一下自己项目,可以正常访问。

这里解释一个小疑惑:我在上一篇文章中写的启动命令是 pm2 start --env uat,但是在这片中文章中写的又是这个命令,其实这俩是一样的,因为我之前打包的时候已经区分了环境,所以这个时候直接启服务就好了

第四步:设置自动重启

这一步的意义就在于当服务器故障或者重启的时候,pm2服务能自动重启,就不需要每次服务器挂了还要人为敲命令去重启pm2服务。

pm2 startup 设置服务器重启后自动启动服务 linux 服务器可以直接执行 ,而windows服务器就需要安装下边的插件才可以

  • 1, 保存启动的服务列表状态
// 这一步是必不可少的
pm2 save
  • 2, 全局安装 pm2-windows-startup
cnpm install pm2-windows-startup -g
  • 3,设置 pm2-startup
pm2-startup install

以上步骤设置成功后,重启一下服务器,然后打开命令行,输入pm2 list看一下服务状态, 然后在看一下网站是否能正常访问,能正常访问就说明设置成功。

结束语

到此,pm2部署nuxt项目就成功了,接下来记一下常用到的pm2命令。

命令用途
pm2 list查看启动的服务列表
pm2 restart nuxtjsDemo重启名为nuxtjsDemo的服务
pm2 stop nuxtjsDemo终止名为nuxtjsDemo的服务
pm2 delete nuxtjsDemo删除名为nuxtjsDemo的服务
pm2 kill杀掉服务
pm2 logs nuxtjsDemo查看名为nuxtjsDemo的服务日志