我见过类似的问题,但没有一个能回答我的问题。可能是我忽略了一些东西。
我有一个现有服务器,其子域指向 next.js 端口,并且可以通过以下方式成功运行 nexxtjs 应用程序
npm run dev
我希望每次服务器重启时都运行它,这样网站就能一直处于运行状态。
我已尝试过该systemctl
服务但无法使其正常工作。
还有其他方法吗?我是否忽略了一些显而易见的事情?
答案1
@SirajusSalekin 实际发表了评论,我相信这是最好的答案。
创建一个 cron 作业以在启动时启动该应用程序。
crontab -e
或者以 root 身份启动应用程序:
sudo crontab -eu root
然后添加以下内容:
@reboot cd project_folder && npm run dev
答案2
最简单的方法是安装 pm2,然后在 pm2 中启动它。pm2 会在系统启动时甚至应用程序崩溃时自动重新启动该应用程序。
sudo npm install pm2 -g
cd myapproot
pm2 start myapp.js
答案3
一起放在sudo
命令行前面,例如:
sudo npm start ...