[55] NodeJS 특화 조정 : 컨테이너에서 Nodemon 사용하기

    728x90
    반응형

    NodeJS 특화 조정 : 컨테이너에서 Nodemon 사용하기

    Node.js 개발 환경 최적화: Nodemon과 Docker

    지난번 강의로 바인드 마운트 덕분에 html소스코드 변경하면 리로드하고 확인 가능했다  
    하지만 server.js에서 변경하면 문제가 있었다.

    즉 노드 (자바스크립트 런타임 환경) 에 의해 실행되는 javascript의 경우 실시간을 확인할 수 없었다.

    이럴때 사용할 수 있는것이 nodemon!

     

     

    Nodemon 소개

    목적

    • 파일 변경 감지 자동화
    • 서버 자동 재시작
    • 개발 생산성 향상

     

    기존 문제점

    • server.js 변경 시 수동 재시작 필요
    • 컨테이너 재시작 필요
    • 개발 효율성 저하

     

     

    Nodemon 설정 방법

    package.json 설정

    {
      "scripts": {
        "start": "nodemon server.js"
      }
    }

     

    Dockerfile 수정

    # 기존
    CMD ["node", "server.js"]
    
    # 변경
    CMD ["npm", "start"]

     

     

    WSL2 사용자를 위한 특별 설정

    package.json 수정

    {
      "scripts": {
        "start": "nodemon -L server.js"
      }
    }

     

    Docker 실행 명령어

    docker run -e CHOKIDAR_USEPOLLING=true ...

     

     

     

    주의사항

    WSL2 특이사항

    • Linux 파일 시스템 사용
    • 파일 변경 감지 문제 발생
    • 추가 설정 필요

     

    성능 고려사항

    • 파일 시스템 모니터링 부하
    • CHOKIDAR_USEPOLLING 사용 시 리소스 사용 증가

     

    이러한 설정으로 개발 중 코드 변경사항이 실시간으로 반영되어 개발 효율성이 향상됩니다.

     

     

     

     

     

    참고

    https://www.udemy.com/course/docker-kubernetes-2022

    728x90
    반응형

    댓글