I'm trying to run my node app on reboot using forever and cron job.
I have installed node via NVM.
this is my crontab:
SHELL=/bin/bash
BASH_ENV=~/.bashrc
@reboot /home/USERNAME/.nvm/versions/node/v15.0.0/bin/forever
start -c /home/USERNAME/.nvm/versions/node/v15.0.0/bin/node
/home/USERNAME/my-node-app/server.js
It seems the cronjob is running forever successfully, however, the app throws an error:
/home/USERNAME/my-node-app/node_modules/@babel/core/lib/config/files/plugins.js:152
throw e;
^
Error: Cannot find module '@babel/plugin-transform-runtime' from '/'
The path to node_modules seems to be correct, and babel is configured correctly, the app runs if I run forever without cronjob.
require("@babel/register")({
presets: ["@babel/preset-env"],
plugins: ["@babel/plugin-transform-runtime"],
});
Ok solved!!
I changed my crontab script to first navigating to app directory and then execute forever from there
SHELL=/bin/bash
BASH_ENV=~/.bashrc
@reboot cd /home/USERNAME/my-ode-app/server.js &&
/home/USERNAME/.nvm/versions/node/v15.0.0/bin/forever
start -c /home/USERNAME/.nvm/versions/node/v15.0.0/bin/node server.js