리눅스 설치 시스템 기준으로 설명 드립니다.
nodejs 프로그램을 매일 같은 시간대에 실행하려면 다음 2가지 프로그램이 설치된 상태여야 합니다.
1. node js 설치
2. crontab 설치
crontab은 리눅스에서 정기적으로 실행되는 작업을 등록하는 스케줄러 프로그램입니다.
만약, nodejs 프로그램이 작성완료되었고 그 위치가 /home/my/program.js라고 가정하겠습니다.
프로그램 실행을 위해 다음 과정을 거쳤을 것입니다.
cd /home/my
node /home/my/program.js
이 과정을 crontab에 설치하는게 핵심 사항입니다
먼저 ssh 등으로 리눅스 터미널 접속된 상태에서 (root 권한으로 접속)
which node라고 실행해 봅니다.
그러면 node 실행 경로가 나오는데 이를 테면..
"/usr/bin/node"나 "/root/.nvm/versions/node/v14/bin/node"와 같은 값이 나올 겁니다.
이걸 복사하신 후 crontab에 넣어야 합니다.
crontab -e 하면, crontab 내용을 vim 등으로 편집할 수 있습니다.
새로운 줄을 맨 아래에 넣는데 다음처럼 넣습니다.
00 03 * * * /usr/bin/node /home/my/program.js
(여기서 "/usr/bin/node"는 which node로 알아낸 경로)
그후 crontab 변경 사항을 저장하고 나오면..
이제 매일 새벽 3시에 /home/my/program.js이 실행될 것입니다.
crontab 설정에 대해 더 알아보시면..
하루에 몇 번 실행할 것인지... 몇시몇분에 실행할 것인지..
일주일에 1번 혹은 한달에 1번 할 것인지 등 다양하게 스케쥴 설정 가능합니다.