nodemon: Node.js 개발 효율을 높이는 도구
nodemon
은 Node.js 애플리케이션 개발 중 코드 변경을 감지하여 애플리케이션을 자동으로 다시 시작해 주는 도구입니다. 개발 환경에서 특히 유용하며, 수동으로 서버를 다시 시작할 필요 없이 코드 변경 내용을 즉시 확인할 수 있습니다.
주요 특징
- 자동 재시작: 파일이 변경될 때 Node.js 애플리케이션을 자동으로 다시 시작합니다.
- 파일 확장자 감시: 기본적으로
.js
,.mjs
,.json
파일 변경을 감지하며, 다른 파일 확장자도 감시 설정이 가능합니다. - 설정 파일 지원:
nodemon.json
파일을 사용하여 구성 설정을 저장할 수 있습니다. - 명령어 지원: Node.js 실행 외에도 다른 스크립트나 명령어 실행이 가능합니다.
설치 방법
전역 또는 로컬로 설치할 수 있습니다.
- 전역 설치:
npm install -g nodemon
전역 설치 후 어디서나
nodemon
명령어를 사용할 수 있습니다. - 로컬 설치:
npm install --save-dev nodemon
로컬 설치는 프로젝트의 개발 의존성(
devDependencies
)에 추가됩니다.
사용법
- 애플리케이션 시작:
nodemon app.js
- 특정 파일 확장자 감시:
nodemon --ext js,html
- 특정 디렉터리 감시 제외:
nodemon --ignore node_modules
- 스크립트로 실행 (package.json에 추가):
"scripts": { "start": "nodemon app.js" }
실행:
npm run start
설정 파일
nodemon.json
파일을 프로젝트 루트에 생성하여 설정을 관리할 수 있습니다.
예제:
{
"watch": ["src", "config"],
"ext": "js,json",
"ignore": ["node_modules"],
"exec": "node app.js"
}
유용한 옵션
--watch
: 특정 디렉터리나 파일을 감시.--exec
: 기본node
외의 명령 실행.--delay
: 파일 변경 후 지연 시간을 설정 (예:--delay 2
).--quiet
: 출력 로그를 최소화.
참고
개발 환경에서 매우 유용하지만, 프로덕션 환경에서는 사용하지 않는 것이 좋습니다. 프로덕션 환경에서는 PM2 같은 프로세스 관리 도구를 고려하세요.
Leave a comment