I installed node.js and npm to my centOS 7 server. But i have problems with pm2. Actually real problem is i don't have experiences in linux and i don't know how to change path. Here is folder structure.
* bin
* code
* error_docs
* httpdocs
* lib64
* logs
* tmp
* var
* chat(my node.js folder)
* node_modules
* pm2
* sockjs
* server.js
* dev
* etc
* lib
* local
* sbin
* usr
I entered folder by typing cd chat
and installed pm2 with npm install pm2
.
After that I tried use pm2 for my server.js by typing pm2 server.js
server returns "pm2 command not found". I can use node.js without any problem but pm2 not working.
How can i solve this?
Install PM2 globally:
run as root:
or if user is sudo-er
and then go back to user (or stay in root if it was created by root user) and run it:
Error on using port 80 with PM2?
The wrong way of going about this is trying to run with
sudo
.The correct way of doing this would be to login as root
sudo su
, then runpm2 start app.js --name "whatever" --watch
.Logging in as root, there's no need to configure any
bashrc
or profile files. However, as root, the script can use nodejs'sexec()
function dangerously. To avoid this, do the root stuff first with your script, then lower your privilege after some timeout: