opt*_*ure 27 amazon-ec2 npm pm2 next.js
我有一个 AWS EC2,仅用于保持 Next.js 客户端运行(目前没有后端)。目前,如果我进入终端并输入npm run develop,该网站将完美运行。但是,我希望这个进程始终在实例的后台运行。有什么办法可以用 pm2 做到这一点吗?
我已在全球范围内安装了它,但它不会让我运行pm2 start npm run develop. 顺便说一句,是的,我希望它现在在开发模式下运行。
Adi*_*iii 51
是的,但请确保该命令存在于 package.json 中
"scripts": {
"dev": "next dev",
"build": "next build",
"start": "next start",
"lint": "next lint"
}
Run Code Online (Sandbox Code Playgroud)
所以在这种情况下,pm2命令将是
pm2 start npm -- dev
#in your case
pm2 start npm -- develop
Run Code Online (Sandbox Code Playgroud)
或者有一个@brc提到的好听的名字
pm2 start npm --name "next-js" -- dev
Run Code Online (Sandbox Code Playgroud)
在 EC2 上运行时,保存启动进程也是一个好习惯
PM2 可以生成启动脚本并配置它们,以便在预期或意外的计算机重新启动时保持进程列表完整。
https://pm2.keymetrics.io/docs/usage/startup/
pm2 startup
pm2 save
Run Code Online (Sandbox Code Playgroud)
小智 14
添加到最佳答案:您确实应该考虑使用:
pm2 start npm -- start
Run Code Online (Sandbox Code Playgroud)
因为它将运行生产构建,而不是开发(我知道OP询问了开发问题,但考虑到应用程序正在生产中,这是一个重要的功能。
| 归档时间: |
|
| 查看次数: |
56567 次 |
| 最近记录: |