NodeJS

PM2 save / startup을 해두어도, reboot 시 실행되지 않을시 처리 방안

lahuman 2020. 6. 12. 22:16
728x90

PM2 save / startup을 해두어도, reboot 시 실행되지 않을시 처리 방안

PM2에서 startup 을 root 가 아닌 계정으로 실행할 경우 아래와 같은 메시지가 표기 됩니다


$ pm2 startup

[PM2] You have to run this command as root. Execute the following command:

      sudo su -c "env PATH=$PATH:/home/unitech/.nvm/versions/node/v4.3/bin pm2 startup <distribution> -u <user> --hp <home-path>

이때 당황하지 말고 sudo 이하의 명령어를 실행하면 됩니다.

(꺽쇠로 나온 값에 대하여 셋팅되여 명령어에 표기 됩니다.)

root 계정이 아닐 경우 발생하는 문제로 설정을 해야 합니다

이후에 startup / service 기동 / save 를 하고 reboot을 해도 문제가 없습니다


$ pm2 startup

# 서비스 기동

$ pm2 start app.js --name=serviceName

# 상태 저장

$ pm2 save

예제

상황 : ubuntu 계정으로 재부팅시 pm2 프로세스를 기동하려고 합니다.


$> pm2 startup ubuntu

$> sudo env PATH=$PATH:/usr/bin /usr/lib/node_modules/pm2/bin/pm2 startup ubuntu -u ubuntu --hp /home/ubuntu



$> cd service

$> pm2 start app.js --name=servicename

$> pm2 save

늘 그렇지만 문서만 잘읽어도 금방 해결될 문제다. 문서 읽기를 생활화 하자!

참고 자료

728x90