pm2를 실행할 때
설정파일(ecosystem.config.js)을 수정한 후
실행 pm2 start ecosystem.config.js 시킨다.
그러나 이렇게만 할 경우
reboot시 pm2 list 에서 없어진다.
저장이 안 되어 있기 때문에 그렇다.
reboot시 pm2 프로세스가 자동으로 재시작 되려면
pm2 startup
이 명령어는 현재 시스템에 맞는 startup 스크립트를 생성하고,
이 스크립트를 시스템의 부팅 프로세스에 등록하는 명령어를 출력합니다.
이 명령은 pm2와 관련된 앱의 위치와 관계 없이 시스템 전역설정에 영향을 주는 것입니다.
명령어 실행 후 표시되는 지시사항을 따라서 출력된 명령어를 실행하여 pm2를 시스템 부팅 프로세스에 등록합니다.
pm2로 실행하고자 하는 앱을 모두 실행한 후, 다음 명령어를 사용하여 현재 상태를 저장합니다.
pm2 save
이렇게 설정하면 재부팅되더라도 저장된 상태를 바탕으로 pm2 가 자동으로 실행되며,
저장된 프로세스 목록을 자동으로 재시작합니다.
❗️startup 설정이 되어있는지 확인하는 방법
systemctl list-unit-files | grep pm2
결과 예시:
pm2-사용자이름.service enabled
여기서 enabled 의미는 서비스가 시스템 부팅 시 자동으로 시작되도록 설정되었음을 나타낸다
startup이 설정 되어있는 상태에서 프로세스를 추가했을 경우
startup 설정을 다시 해줄 필요가 없다. 이 설정은 한번 수행해도 pm2 자체에 적용된 것으로 시작하는 모든 프로세스에 자동으로 적용된다.
그러나 현재 상태는 저장해주어야 한다.
pm2 save
이 명령은 pm2가 관리하는 현재 실행중인 모든 애플리케이션의 상태를 저장하므로
시스템을 재부팅할 때 pm2가 이 상태 정보를 바탕으로 자동으로 프로세스들을 다시 시작할 수 있게 해야한다.
참고
chatgpt
'ect' 카테고리의 다른 글
npm install `--force` and `--legacy-peer-deps` 차이점 (0) | 2024.08.26 |
---|---|
pm2 "npm run start"로 실행하기 (0) | 2024.04.01 |
git | 레파지토리 복사하기 (0) | 2023.04.15 |
git | git push 에러 (mac) (0) | 2023.04.14 |
뿌띠 (0) | 2023.04.05 |